def solution(n, t, m, timetable):
timetable = sorted([int(i[:2])*60 + int(i[3:]) for i in timetable]) # 분으로 통일해서 정렬
con_time = 540 # 9*60 + 0 = 540
bus_time = 540 # 9시
# get_bus_people = []
for _ in range(n):
for _ in range(m):
# 대기하는 사람들이 있고 가장 먼저 대기한 사람이 셔틀버스 시간보다 먼저 와 있어야함
if timetable and timetable[0] <= bus_time:
# get_bus_people.append(timetable.pop(0)) # 버스에 가장 먼저 온 사람 부터 넣는다
con_time = timetable.pop(0) - 1 # 콘이 가장 앞에 기다렸던 사람보다 일찍 와서 기다려야함
else: # 기다리는 사람이 없거나 또는 가장 일찍 기다리는 사람이 현재 버스시간보다 나중에 오면
con_time = bus_time # 콘은 그냥 지금 셔틀 버스 시간에 가서 타면 됨
bus_time += t # 버스가 t 간격으로 운영됨
answer = f'{str(con_time//60).zfill(2)}:{str(con_time%60).zfill(2)}'
return answer
if __name__ == '__main__':
n=1
t=1
m=5
timetable = ["08:00", "08:01", "08:02", "08:03"]
print(solution(n, t, m, timetable))