Hour, Min, Sec = map(int, input().split())

ttaken = int(input())


Sec += ttaken % 60

ttaken = ttaken // 60

if Sec >= 60: 

    Sec -= 60

    Min += 1

    

Min += ttaken % 60

ttaken = ttaken // 60

if Min >= 60:

    Min -= 60

    Hour += 1

    

Hour += ttaken % 24

if Hour >= 24:

    Hour -= 24


print(Hour, Min, Sec)



백준 2530번 문제인 시간과 경과시간 입력해서 시간계산해주는 코드인데

잘모르겠어서 찾아보고난뒤 입력하고 이게 어떻게 이렇게 되나 생각하고있었어요

Hour Min Sec 값에 1 0 0을 입력하고 ttaken(경과시간)에 200을 입력했습니다.

그러면 실행하면 3분 20초가 증가한 1 3 20이 되어야하잖아요? 프로그램도 마찬가지로 정상실행되구요..


그런데 4,5번줄의 Sec += ttaken % 60, ttaken = ttaken // 60을 실행하면 변수 Sec는 20, ttaken은 3으로 변합니다.

근데 그러면 변수값도 변하니 그다음줄 if문 Sec >= 60: 이 성립되지 않아 실행이 안되는거 아닌가요?

간단한 코드같지만 생각해보니 변수값이 변해서 if문을 성립하지 않는 것같은데 잘실행되서 이해되지 않아서

여쭤봅니다 ㅠ 꼭알고싶어요!