알고리즘/백준 BAEK JOON

2884.알람 시계

IMyoungho 2020. 4. 21. 23:10

이번 문제 역시 난이도가 매우매우 쉽다... 사실 포스팅할 필요도 없다.

다만 구현 문제를 보면서 느끼는 점은 예외처리를 생각해보라는 의도들이 있는 것 같아서...

다음 포스팅 부터 쉬운 문제들은 최대한 안쓰고 넘어가야 겠다.

 

2884번: 알람 시계

문제 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, 조금만 더 자려는 마음은 그 어떤 것도 없앨 수가 없었다. 이런 상근이를 불쌍하게 보던, 창영이는 자신이 사용하는 방법을 추천해 주었다. 바로 "45분 일찍 알람 설정하기"이다. 이 방법은 단순하다. 원래 설정되어 있는 알람을 45분 앞서는 시간으로 바꾸는 것이다.

www.acmicpc.net

 

 

< Code 설명 >

#include <iostream>

using namespace std;

int main()
{
    int n, m;
    cin >> n >> m;
    if(m<45){        // m이 45보다 작은 경우 
        m=60-(45-m); // 45에서 -m한 값을 60에서 뺀 것과 같다.
        if(n==0)     // m이 45보다 작은 경우 n에도 영향을 준다.
            n=23;    // n이 0일 경우는 23이 되고
        else         // 그게아닌 경우는 n값이 변하게 된다.
            n--;
    }
    else
        m-=45;       // m이 45보다 크면 그냥 빼면된다..

    cout << n << " " << m << "\n"; // 출력

    return 0;
}
반응형