[Programmers/프로그래머스] 2018 KAKAO BLIND RECRUITMENT [1차 코딩테스트]
- [Lv. 1] 비밀 지도
- [Lv. 1] 다트 게임
- [Lv. 2] 캐시
- [Lv. 3] 셔틀버스
- [Lv. 2] 뉴스 클러스터링
- [Lv. 2] 프렌즈4블록
- [Lv. 3] 추석 트래픽
📌 문제
📝 입력 형식
💻 출력 형식
📖 입출력 예제
📌 풀이
def str2min(time):
hour, minute = map(int, time.split(':'))
return hour * 60 + minute
def min2str(time):
hour = str(time // 60).zfill(2)
minute = str(time % 60).zfill(2)
return hour + ':' + minute
def solution(n, t, m, timetable):
bus_table = [9 * 60 + t * i for i in range(n)]
timetable = sorted([str2min(time) for time in timetable])
i = 0
answer = 0
for bus_time in bus_table:
passengers = 0
while passengers < m and i < len(timetable) and timetable[i] <= bus_time:
i += 1
passengers += 1
if passengers < m:
answer = bus_time
else:
answer = timetable[i - 1] - 1
return min2str(answer)