-
백준 14470번 : 전자레인지 (C 언어)c c++ 언어 공부 2023. 9. 26. 12:02
https://www.acmicpc.net/problem/14470
14470번: 전자레인지
JOI 군은 식사 준비를 위해 A℃의 고기를 전자레인지로 B℃까지 데우려고 한다. 고기는 온도가 0℃보다 낮을 때 얼어 있고, 0℃보다 높을 때는 얼어 있지 않다. 온도가 정확히 0℃일 때 고기는 얼어
www.acmicpc.net
Code:
1234567891011121314151617181920212223242526272829303132#include <stdio.h>int main(){int a, b, c, d, e;scanf("%d %d %d %d %d", &a, &b, &c, &d, &e);int time = 0;int flag = 0;while (1){if (a == b){break;}if (a < 0){a += 1;time += c;}if (a == 0&&flag==0){time += d;flag = 1;}if (a >= 0){a += 1;time += e;}}printf("%d", time);}cs 문제 설명: 주어진 온도 A에서 목표 온도 B까지 고기를 데우는데 걸리는 시간을 계산하는 문제입니다. 고기가 얼어 있을 때와 얼어 있지 않을 때의 데우는 시간이 주어지며, 고기의 온도를 조절하면서 걸리는 시간을 계산하여 출력해야 합니다.
코드 설명:
- int a, b, c, d, e;를 통해 입력받을 변수들을 선언합니다.
- scanf를 사용하여 입력을 받습니다.
- int time = 0;을 통해 데우는 데 걸리는 시간을 저장할 변수를 초기화합니다.
- int flag = 0;을 통해 얼어 있는 상태를 나타내는 flag 변수를 초기화합니다.
- while (1)을 통해 무한 루프를 시작합니다.
- if (a == b)로 고기의 현재 온도가 목표 온도에 도달했는지 확인합니다. 도달했다면 루프를 빠져나옵니다.
- if (a < 0)로 고기가 얼어 있는 상태인지 확인하고, 얼어 있는 상태라면 온도를 1℃ 올리고 데우는 시간을 더합니다.
- if (a == 0 && flag == 0)으로 고기가 정확히 0℃인 상태인지 확인하고, 해당 상태라면 해동하는 데 걸리는 시간을 더하고 flag를 1로 설정합니다.
- if (a >= 0)으로 고기가 얼어 있지 않은 상태인지 확인하고, 얼어 있지 않은 상태라면 온도를 1℃ 올리고 데우는 시간을 더합니다.
- 최종적으로 데우는데 걸린 시간인 time을 출력합니다.
'c c++ 언어 공부' 카테고리의 다른 글
백준 1284번 : 집 주소 (C 언어) (0) 2023.09.27 백준 2435번 : 기상청 인턴 신현수 (C 언어) (0) 2023.09.26 백준 2010번 : 플러그 (C 언어) (0) 2023.09.25 백준 5524번 : 입실 관리 (C 언어) (0) 2023.09.25 백준 1755번 : 숫자놀이 (C 언어) (0) 2023.09.22