728x90
반응형
문제 링크 : https://www.acmicpc.net/problem/2884
목차
1. 설명
2. 내 코드
3. 문제 풀이 해석 내용
4. 실행 결과
설명
백준 브론즈 3 문제 입니다.
문제명 : 알람 시계
내 코드
#include<iostream>
using namespace std;
int main()
{
int a, b;
cin >> a >> b;
if (b < 45)
{
b += 15;
a--;
}
else
{
b -= 45;
}
if (a < 0)
{
a = 23;
}
cout << a << " " << b;
}
문제 풀이 해석 내용
입력 받기
int a, b;
cin >> a >> b;
a: 시(hour)
b: 분(minute)
사용자가 현재 시간을 입력합니다.
분에서 45 빼기
if (b < 45)
{
b += 15;
a--;
}
else
{
b -= 45;
}
b가 45분 미만이면, 45분을 빼면 음수가 되므로
→ 대신 b에 60분을 더하고 45분을 뺍니다 (즉, b += 15)
→ 그리고 한 시간(a)을 감소시킵니다
b가 45분 이상이면, 그냥 45분만 빼면 됩니다.
시 조정
if (a < 0)
{
a = 23;
}
a가 0이었는데 1 감소하면 -1이 되므로
→ a = 23 (하루의 마지막 시간으로 설정)
출력
cout << a << " " << b;
조정된 a와 b를 출력.
실행 결과
'c++' 카테고리의 다른 글
백준 c++ 2738 문제 풀이 (0) | 2025.04.03 |
---|---|
백준 c++ 1264 문제 풀이 (0) | 2025.04.02 |
백준 c++ 2439 문제 풀이 (0) | 2025.03.31 |
백준 c++ 2438 문제 풀이 (0) | 2025.03.30 |
c++ 시작 해보기 5 (0) | 2025.03.15 |