Search
Duplicate

[3차] 방금그곡

문제 설명 및 제한사항

아이디어 및 해결 방법

코드

def h2m(s): return 60*int(s.split(':')[0]) + int(s.split(':')[1]) def parse(musicinfo): start, end, name, melody = musicinfo.split(',') duration = h2m(end) - h2m(start) melody = melody.replace('C#', 'H').replace('D#', 'I').replace('F#', 'J').replace('G#', 'K').replace('A#', 'L') full_melody = melody * (duration // len(melody) + 1) full_melody = full_melody[:duration] return name, duration, full_melody def solution(m, musicinfos): m = m.replace('C#', 'H').replace('D#', 'I').replace('F#', 'J').replace('G#', 'K').replace('A#', 'L') max_duration, answer = -1, '(None)' for name, duration, melody in [parse(x) for x in musicinfos]: if m in melody and duration > max_duration: answer = name max_duration = duration return answer
Python
복사

출처

프로그래머스 코딩테스트 연습 https://school.programmers.co.kr/learn/challenges