def solution(n, words):
pos = [0 for _ in range(n)]
pos[0] = 1
lst = set([words[0]])
for i in range(1, len(words)):
pos[i % n] += 1
if words[i-1][-1] != words[i][0]:
return (i % n) +1, pos[i%n]
elif words[i] not in lst:
lst.add(words[i])
else:
return (i % n) +1, pos[i%n]
return [0,0]
나는 position을 행렬을 만들어서 식을 넣었지만
몫을 계산해서 몇번째 행인지 알 수 있음
def solution(n, words):
for p in range(1, len(words)):
if words[p][0] != words[p-1][-1] or words[p] in words[:p]: return [(p%n)+1, (p//n)+1]
else:
return [0,0]
참고코드
https://school.programmers.co.kr/learn/courses/30/lessons/12981/solution_groups?language=python3
'Programming > 코딩테스트' 카테고리의 다른 글
[프로그래머스] 연속 부분 수열 합의 개수 (0) | 2024.03.24 |
---|