ALGORITHM/PYTHON

백준 BAEKJOON 13223번 소금 폭탄 [PYTHON/파이썬]

칼코
반응형

백준 BAEKJOON 13223번 소금 폭탄 [PYTHON/파이썬]


<문제 출처>

https://www.acmicpc.net/problem/13223

 

13223번: 소금 폭탄

첫째 줄에는 현재 시각이 hh:mm:ss로 주어진다. 시간의 경우 0≤h≤23 이며, 분과 초는 각각 0≤m≤59, 0≤s≤59 이다. 두 번째 줄에는 소금 투하의 시간이 hh:mm:ss로 주어진다.

www.acmicpc.net

<풀이>

입력 받은 시간을 초 단위로 환산해줬다.

그리고 현재 시간과 소금 투하 시간을 비교해서

소금 투하 시간이 현재 시간보다 작으면 24시간을 초로 환산해서 더한 뒤 차이를 구했다.

 

그 결과에서 문제의 출력과 맞게끔 시간이 일의 자리수로 나온다면

앞에 0을 채워야하기 때문에 .zfill 을 사용해줬다. (.zfill 은 아래 블로그를 참고했다.)

 

파이썬 문자열 앞 0으로 채우기 zfill() - 제타위키

다음 문자열 포함...

zetawiki.com

 

<코드>

now = list(map(int, input().split(':')))	# 현재 시간
salt= list(map(int, input().split(':')))	# 소금 투하 시간

# 현재 시간과 소금 투하 시간 초로 환산
now_time = now[0] * 3600 + now[1] * 60 + now[2]
salt_time = salt[0] * 3600 + salt[1] * 60 + salt[2]

if now_time >= salt_time :	# 조건에 해당하면
    salt_time += 24 * 3600	# 24시간의 초를 더함

result = salt_time - now_time	# 경과 시간

hh = str(result // 3600).zfill(2)
mm = str((result % 3600) // 60).zfill(2)
ss = str(result % 60).zfill(2)
print('{}:{}:{}'.format(hh, mm, ss))
반응형