본문 바로가기

Python(알고리즘,문제풀이)/BOJ(Silver V)

백준 / 연도 진행바 / Python / 구현,문자열,파싱

728x90

📚문제

출처 : 백준 1340번(https://www.acmicpc.net/problem/1340)


📝풀이

# 1340번 연도 진행바(Silver V)
month, day, year, time = input().split()
day = int(day[:-1])
year = int(year)
hour, minute = map(int,time.split(':'))

months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
month_days =  [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]

# days(일)
total_days = 0

if year%400==0 or (year%4==0 and year%100!=0):
    month_days[1] += 1

total_days += sum(month_days[:months.index(month)]) + day - 1

# time(시,분)
total_time = (total_days*24*60) + (hour*60) + minute
divide_time = sum(month_days)*24*60
percent = (total_time / divide_time)*100
print(percent)

시간(시,분)이 포함되어 있어서

조금 까다로웠던것 같다

 

day는 윤년까지 계산해서 잘 나왔는데

시간부분이 조금 까다로워서 구글링하여 참고했다

 

728x90