2019 KAKAO BLIND RECRUITMENT 실패율 (lv1)
7978 단어 psKAKAO 블라인드 테스트KAKAO 블라인드 테스트
정답 코드 1
def solution(N, stages):
answer = []
arrive = [0 for i in range(N + 2)]
current = [0 for i in range(N + 2)]
for s in stages:
for j in range(1, s + 1):
arrive[j] += 1
current[s] += 1
print(arrive)
print(current)
temp = []
for i in range(1, N + 1):
if arrive[i] == 0:
temp.append([0, i])
else:
temp.append([current[i] / arrive[i], i])
print(temp)
temp.sort(reverse=True, key=lambda x: x[0])
for i in range(N):
answer.append(temp[i][1])
return answer
정답 코드 2
def solution(N, stages):
answer = {}
players = len(stages)
for i in range(1, N + 1):
if players != 0:
current = stages.count(i)
answer[i] = current / players
players -= current
else:
answer[i] = 0
return sorted(answer, reverse = True, key = lambda x : answer[x])
배운 점
첫 번째 코드에 비해 두 번째 코드의 실행 속도가 많이 빠르다.
시간 복잡도 향상을 위한 고민이 부족하다.
dun dun dance 들으면서 코딩하면 좋다.
Author And Source
이 문제에 관하여(2019 KAKAO BLIND RECRUITMENT 실패율 (lv1)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yibangwon/2019-KAKAO-BLIND-RECRUITMENT-실패율-lv1저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)