반응형
def solution(answers):
answer_1=[1,2,3,4,5]
answer_2=[2,1,2,3,2,4,2,5]
answer_3=[3,3,1,1,2,2,4,4,5,5]
score=[0,0,0]
result=[]
for idx,answer in enumerate(answers):
if answer==answer_1[idx%len(answer_1)]:
score[0]+=1
if answer==answer_2[idx%len(answer_2)]:
score[1]+=1
if answer==answer_3[idx%len(answer_3)]:
score[2]+=1
for idx,s in enumerate(score):
if s==max(score):
result.append(idx+1)
return result
처음에는 answer_1,2,3을 각각 answer길이에 맞춰서 반복해줄까 생각을 했는데 그건 너무 비효율적이라고 생각하여
고안한 방법이다. 사실 이 방법을 생각해내기까지 좀 오래걸렸다...ㅎ
index를 사용한 방법이다. 이렇게 코딩하니까 효율적인것 같다.
결론 : enumerate() 를 잘 활용하자!!
반응형
'알고리즘 > 프로그래머스 level 1,2' 카테고리의 다른 글
[파이썬🐍] 프로그래머스 : 2016년 (0) | 2021.04.19 |
---|---|
[파이썬🐍] 프로그래머스 : 체육복 (0) | 2021.04.19 |
[파이썬🐍] 프로그래머스 : 완주하지 못한 선수 (0) | 2021.04.18 |
[파이썬🐍] 프로그래머스 : 주식가격 (0) | 2021.04.17 |
[파이썬🐍] 프로그래머스 : 프린터 (0) | 2021.04.17 |
댓글