문제
접근
이전 단어의 마지막과 현재 단어의 시작이 같은지 여부와
현재 단어가 이전에 나온적이 있는지만 체크해주면 된다.
코드
- 파이썬 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
def solution(n, words):
answer = []
word_set = set()
loc = 0
turn = 1
now_word = words[0][0]
for word in words:
if word[0] == now_word[-1]:
now_word = word
beLen = len(word_set)
word_set.add(word)
if beLen == len(word_set):
answer = [loc+1, turn]
break
else:
loc = loc+1
if loc >= n:
loc %= n
turn+=1
else:
answer = [loc+1, turn]
break
if len(answer)==0:
answer = [0,0]
return answer