IT/coding study

[programmers] [3차] 방금그곡 (python)

seyeonHello 2022. 1. 17. 23:57

2018 KAKAO BLIND RECRUITMENT

- 문자열 치환 아이디어 참고

def change(song):
    song=song.replace('A#','a').replace('C#', 'c').replace('D#', 'd').replace('F#', 'f').replace('G#', 'g')
    return song

def solution(m, musicinfos):
    answer = ''
    m=change(m)
    max_diff=0
    
    for info in musicinfos:
        start,end,title,song=info.split(',')
        song=change(song)
        ends=list(map(int,end.split(':')))
        starts=list(map(int,start.split(':')))
        
        diff=(ends[0]*60+ends[1])-(starts[0]*60+starts[1])
        multi=diff//len(song)+1
        new_song=(song*multi)[:diff]
        
        if m in new_song:
            if diff>max_diff:
                answer=title
                max_diff=diff
                
    if answer=='':
        return "(None)"
    return answer