[Python][프로그래머스][Level3] 추석 트래픽

[Python][프로그래머스][Level3] 추석 트래픽

코드

def solution(lines):
    realtime=[]
    for line in lines:
        date,time,processing= line.split()
        year,month,day=date.split('-')
        hour,minute,second=time.split(':')
        processing=processing.split('s')[0]
        realtime.append([round(int(day)*86400+int(hour)*3600+int(minute)*60+float(second)-float(processing)+0.001,3),round(int(day)*86400+int(hour)*3600+int(minute)*60+float(second),3)])
    realtime.sort()
    
    answer=[]
    for s,e in realtime:
        answer.append(0)
        for start,end in realtime:
            if start>e+0.999 or end<e:
                continue
            else:
                answer[-1]+=1
                
    return max(answer)
    return answer

일단 먼저 날짜를 초단위로 변경하고 시작시간, 종료시간으로 나누어 realtime에 저장했다.

그리고 realtime을 돌며 1초 범위에 있는지 확인하고 처리량을 증가시켰다.

시작지점과 끝지점 모두 기준으로 할 수 있지만

그러면 중복이 있기 때문에 연산량이 늘어나서 그냥 끝지점만 기준으로 했다.

Discussion and feedback