본문 바로가기

코딩테스트

[프로그래머스(Programmers)/Level2](python) 방금그곡

 

 

<내코드>

 

<풀이과정>

먼저 #이 붙은경우는 좀 더 다루기 쉽게 하기 위하여 해당알파벳 소문자로 치환한다(모든 음이 대문자 이므로). 그러고 곡에대한 시작,종료시간, 곡명,음 을 리스트에 담아 곡의 재생시간을 구하고 주어진 시간만큼 주어진 음을 반복해서 임시로 문자열에 담아놓고 

임시 문자열에 들었던 음들이 포함되어 있으면 재생된시간, 들어온 순서와 같이 answer리스트에 넣어주고 1차로 재생된 시간을 기준으로 정렬, 2차로 재생된 시간이 같으면 들어온 순서 기준으로 정렬을 해준 뒤, 리턴한다.

 

<느낀점>

문제가 간단한거 같으면서도 은근히 복잡한 작업을 많이 요했고(알파벳 치환, 문자열 시간들을 걸린 시간으로 바꾸기, ...등) 정렬을 1차,2차 기준을 나눠서 해야했다. 집중력을 잃지않고 끝까지 푸는 것이 중요하다고 느꼈다.