💡 생각
배열 읽으면서
1) 잘못 이어서 틀린 사람
2) 같은 단어 중복해서 틀린 사람
찾으면 되는데
1번의 경우, 앞 단어의 마지막 글자와 뒷 단어의 첫 글자를 비교하면 되고
2번의 경우, 지금 인덱스 전까지의 배열에서 같은 단어가 존재하는지 count
로 검사해 찾아보면 될 것 같다
가장 먼저 탈락하는 사람의 번호 : (걸린 인덱스) % n(사람 수) + 1
그 사람이 자신의 몇 번째 차례에 탈락하는지 : (걸린 인덱스) // n(사람 수) + 1
📖 내 코드
def solution(n, words):
answer = 0
for i in range(1, len(words)):
if words[i-1][-1] != words[i][0] or words[:i].count(words[i]):
answer = i
break
return [0, 0] if answer == 0 else [answer%n+1, answer//n+1]
📑 다른 사람의 풀이
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]
count
로 중복 단어의 개수를 찾는 게 아니라 word in words
로 배열 안에 있는 지 검사하기