전체 코드
#include <iostream>
int main()
{
int hour, min;
std::cin >> hour >> min;
min -= 45;
if (min<0)
{
min += 60;
hour--;
if (hour < 0)
{
hour += 24;
std::cout << hour << " " << min;
}
else
{
std::cout << hour << " " << min;
}
}
else
{
std::cout << hour << " " << min;
}
}
풀이
- 처음에 입력받은 뒤 min(분)을 45뺌
int hour, min;
std::cin >> hour >> min;
min -= 45;
- 첫 if문
- 만약 분 부분이 음수가 되면(0보다 작으면) : 60분을 더함, 대신 더한 만큼 1시간(60분) 뺌->다음 if문 실행
- 해당되지 않으면 출력
if (min<0)
{
min += 60;
hour--;
// 코드 생략
}
else
{
std::cout << hour << " " << min;
}
- 두번째 if문
- 만약 시간부분이 음수가 되면(0보다 작으면) : 24시 더한뒤 출력
- 나머지 : 그냥 출력
if (hour < 0)
{
hour += 24;
std::cout << hour << " " << min;
}
else
{
std::cout << hour << " " << min;
}
'백준 단계별로 풀어보기(C++) > 2)조건문' 카테고리의 다른 글
백준 2480) 주사위 세개 (C++) (1) | 2023.03.09 |
---|---|
백준 2525) 오븐 시계 (C++) (0) | 2023.03.09 |
백준 14681) 사분면 고르기 (C++) (0) | 2023.03.09 |
백준 2753) 윤년 (C++) (0) | 2023.03.08 |
백준 9498) 시험 성적 (C++) (0) | 2023.03.08 |