Programming/백준
[브론즈 4] 백준 14470 - 전자레인지 (파이썬)
pental
2025. 5. 2. 19:10
https://www.acmicpc.net/problem/14470
풀이
- 음식의 초기 온도 A에서 목표 온도 B까지 가열해야 한다.
- 조건에 따라 걸리는 시간이 다르다.
- 냉동 상태(0°C 미만)은 1도 올리는 데 C초 걸림.
- 0°C에서 해동하는 데 D초 소모.
- 해동된 후(0도 이상) 1도 올리는 데 E초 걸림.
if A < 0 and B < 0:
print((B - A) * C)
초기 상태가 냉동 상태이고, 목표도 냉동 상태인 경우에는 단순히 A부터 B까지 C초로만 가열한다.
elif A < 0 and B > 0:
print(-A * C + D + B * E)
A를 0까지 올리는데 -A * C초가 필요로 한다.
그 다음, 0도에서 해동하는데 D초가 걸리고, 해동 후 B도 까지 올리는데 B * E초가 걸린다.
총시간을 수식으로 나타내면 -A * C + D + B * E 초가 소요된다.
else:
print((B - A) * E)
초기 상태가 해동 상태인 경우에는 이미 0도 이상이니까, A에서 B까지 E초로 올리기만 하면 된다.
코드
# 백준 14470 - 전자레인지
# 분류 : 구현
A = int(input())
B = int(input())
C = int(input())
D = int(input())
E = int(input())
if A < 0 and B < 0 :
print((B - A) * C)
elif A < 0 and B > 0 :
print(-A * C + D + B * E)
else :
print((B - A) * E)