단어를 pre_words에 담으면서 길이/유무/'끝말잇기' 확인을 하고 탈락 여부를 결정한다. 탈락 시 몇 번째 사람이 탈락했는지, 몇 번째 차례에서 탈락했는지 인덱스 i와 사람 수 n을 통해 return한다.
def solution(n, words):
pre_words = [words[0]]
for i in range(1, len(words)):
if len(words[i]) > 1 and words[i] not in pre_words and words[i][0] == pre_words[-1][-1]:
pre_words.append(words[i])
else:
return [i%n+1, i//n+1]
return [0, 0]
탈락 조건을 작성하는 것보다 n과 i를 통해 탈락한 차례/몇 번째 차례인지를 체크할지 결정하는 게 더 걸렸던 문제다. 좀 더 코드를 직관적으로/깔끔하게 쓰도록 노력하자.