728x90
https://www.acmicpc.net/problem/2525
백준 알고리즘 No.2525: 오븐 시계 문제풀이입니다.
Np.2525 문제풀이를 시작하겠습니다.
풀이
- 현재 시각의 시를 입력받을 정수형 변수 A, 분을 입력받은 정수형 변수 B, 요리하는 데 걸리는 시간(분 단위)을 입력받을 정수형 변수 C를 선언합니다.
- 현재 분(B)과 필요한 분(C)을 더하여 60분을 넘었을 때와 넘지 않았을 때의 범위를 나누어줍니다. => 이유:오븐구이의 끝나는 시각을 구하기 위해서 60분이 넘으면 시간으로 넘어가도록 프로그래밍해야 됩니다.
- B+C < 60 이면 B+C(분) 그대로 출력 => printf("%d %d", A, B + C);
- B+C >= 60 이면 시간과 분을 나누어서 최종적으로 현재 시각에다 더하여 끝나는 시각을 구하여야 합니다.
4-1) 시간은 새로운 정수형 변수 hour 를 만들어 B+C를 더한 값에서 60(분)을 나누어 나온 몫을 저장합니다.
4-2) 분은 새 정수형 변수 min에다 위에서 나눈 값의 나머지를 저장합니다. - 문제에서 주어진 조건으로 24시가 넘을 시 0시로 넘어가는 조건을 충족시켜야 됩니다. 이를 해결하기 위해서 현재 시각에 앞서 구한 hour의 시간을 더했을 때 24시를 넘느냐 안 넘느냐에 대한 조건을 따로 만들어 줘야합니다.
- A+hour < 24 이면 A+hour 그대로 출력합니다. => printf("%d %d", A+hour, min);
- A+hour > 24 이면 A+hour을 24로 나누었을 때의 나머지를 출력하게 합니다. => 이유:하루의 기준이 24이기 때문에 24시간을 넘은 시간을 24로 나누면 몫으로 '일수'를 알 수 있고, 나머지로는 하루의 몇 시간이 지났는지 알 수 있기 때문에 나머지를 출력되게 하였습니다.
※추가로 c언어에서의 함수의 작업을 끝내고 작업의 결과를 반환할 때 사용하는 return 0; 을 써야 프로그램 또는 시스템과의 상호작용에 있어 예상치 못한 문제를 방지할 수 있습니다.
챗GPT를 활용한 용어정리
챗GPT를 활용하여 코딩한 문제를 해석해봤습니다.
위에 내용이 이해가 되지 않으신 분은 참고하시면 될 것 같습니다.
[참고]
https://loding.tistory.com/entry/%EB%B0%B1%EC%A4%80C%EC%96%B8%EC%96%B4-2525%EB%B2%88-%EC%98%A4%EB%B8%90-%EC%8B%9C%EA%B3%84 / 책 C언어 콘서트 - 천인국
728x90
'백준(BaekJoon)' 카테고리의 다른 글
[BaekJoon/C] No.11022 : A+B-8 (0) | 2024.05.08 |
---|---|
[BaekJoon/C] No.2743 : 문자열 길이 재기 (0) | 2024.04.30 |
[BaekJoon/C] No.9086 : 문자열 (1) | 2024.04.30 |
[BaekJoon/C] No.2439 별 찍기 - 2 (0) | 2024.03.31 |
[BaekJoon/Python 3] No.18108 : 1998년생인 내가 태국에서는 2541년생?! (0) | 2024.03.27 |