본문 바로가기
Algorithm

[구현/수학] 백준 14470 전자레인지 - Python

by jangThang 2022. 2. 19.
반응형

백준 온라인 저지

 

[ Contents ]

     

     

    1. 문제 (링크 참조)

     

    14470번: 전자레인지

    JOI 군은 식사 준비를 위해 A℃의 고기를 전자레인지로 B℃까지 데우려고 한다. 고기는 온도가 0℃보다 낮을 때 얼어 있고, 0℃보다 높을 때는 얼어 있지 않다. 온도가 정확히 0℃일 때 고기는 얼어

    www.acmicpc.net

     

     

     

    2. 문제 풀이

     목표 온도까지 전자레인지로 고기를 데우는 문제입니다.

     

    2022.01.19 - [Algorithm] - [Algorithm] 단골 1번 문제, 구현 / 수학

     

    [Algorithm] 단골 1번 문제, 구현 / 수학

    [ Contents ] 1. 구현  단순히 '구현'만 하면 되는 문제 유형입니다. 문제를 이해하고 입력에 맞춰 적절한 출력만 하면 됩니다. 특별한 알고리즘이나 프로그래밍적 기법 없이, 단순 제어문만 사용하

    star7sss.tistory.com

     고기의 온도가 0도 미만, 0도, 0도 이상일 때로 나누어서 조건문을 작성합니다.

     주의할 점은 0도일 때, 해동하는 시간 뿐만 아니라 '0도에서 1도로 올리는 시간'도 필요합니다.

     

     

     

    3. 코드

    meatT = int(input()) # 고기 온도
    targetT = int(input()) # 목표 온도
    subZero = int(input()) # 영하일 때 1도 올리는 데 필요한 시간
    defrost = int(input()) # 해동 시간
    uponZero = int(input()) # 영상일 때 1도 올리는 데 필요한 시간
    
    time = 0
    while meatT != targetT: # 목표온도에 도달할 때까지 반복
        # 고기 온도가 영하일 때
        if meatT < 0:
            time += subZero
            meatT += 1
    
        # 고기 온도가 0도일 때
        elif meatT == 0:
            time += defrost #해동
            time += uponZero #0도에서 1도 올리는데 필요한 시간
            meatT += 1
    
        # 고기 온도가 영상일 때
        else:
            time += uponZero
            meatT += 1
    print(time)

     고기의 온도가 목표 온도에 도달할 때까지 반복합니다. 

     1도 올리는 데에 필요한 시간은 고기의 온도에 따라 다르며, 0도에서 1도 올릴 때는 특별히 해동시간이 별도로 필요합니다. 

     

    star가 되고나서 Tistory

    반응형

    댓글