풀이
- 1,2,3번의 반복 구간을 확인 후, li에 각 반복되는 구간을 넣어줘서
- 이후 1,2,3번의 반복 구간의 길이보다 answers 길이가 더 길 경우를 위해
- j%len(li[i]) 로 반복할 수 있도록 하여 문제 해결
- 문제 제출 후 cycle이라는 메서드를 알게 되었는데
- from itertools import cycle로 배열을 인자로 넣어주고
- next() 메서드로 배열을 넣어주게 되면
- 계속해서 값을 조회하게 되어 해당 방법으로 문제를 푸는 사람도 확인 되었음.
def solution(answers):
result = []
li = [[1,2,3,4,5],[2,1,2,3,2,4,2,5],[3,3,1,1,2,2,4,4,5,5]]
mx = 0
for i in range(len(li)):
check = 0
for j in range(len(answers)):
if li[i][j%len(li[i])] == answers[j]: check += 1
if check > mx:
result = [i+1]
mx = check
elif check == mx: result.append(i+1)
return result
'알고리즘' 카테고리의 다른 글
[프로그래머스, 파이썬] 완주하지 못한 선수 (0) | 2024.02.26 |
---|---|
[프로그래머스, 파이썬] 다음에 올 숫자 (0) | 2024.02.26 |
[프로그래머스, 파이썬] OX퀴즈 (0) | 2024.02.23 |
[프로그래머스, 파이썬] 폰켓몬 (0) | 2024.02.23 |
[프로그래머스, 파이썬] 연속된 수의 합 (0) | 2024.02.23 |