문제
programmers.co.kr/learn/courses/30/lessons/17683
처음 작성한 코드
def solution(m, musicinfos):
answer = ''
maxTime = 0
m = m.replace('C#','c').replace('D#','d').replace('F#','f').replace('G#','g').replace('A#','a')
for i in musicinfos:
tmp = i.split(',')
runningTime = (int(tmp[1].split(':')[0]) - int(tmp[0].split(':')[0]))*60 + (int(tmp[1].split(':')[1]) - int(tmp[0].split(':')[1]))
tmp[3] = tmp[3].replace('C#','c').replace('D#','d').replace('F#','f').replace('G#','g').replace('A#','a')
mok, namaji = divmod(runningTime, len(tmp[3]))
music = tmp[3]*mok+tmp[3][:namaji]
if m in music:
if maxTime < runningTime:
maxTime = runningTime
answer = tmp[2]
return answer if answer else "(None)"
깨달은 점
- 카카오 코테는 문제 조건만 맞추면 거의 대부분 통과한다. (효율성 테스트 없을때...^^)
- 반환할 때, return answer if 조건 else 반환값 이런 식으로도 사용할 수 있다.
- 사람들 생각하는 거 다 비슷하다..
'Programmers' 카테고리의 다른 글
[프로그래머스] 파일명 정렬 (0) | 2021.02.06 |
---|---|
[프로그래머스] n진수 게임 (0) | 2021.02.05 |
[프로그래머스] 짝지어 제거하기 (0) | 2021.01.30 |
[프로그래머스] 폰켓몬 (0) | 2021.01.30 |
[프로그래머스] 소수 만들기 (0) | 2021.01.28 |