코딩 테스트/문제 풀기

[프로그래머스] 영어 끝말 잇기

hazel_ 2021. 3. 29. 11:48

programmers.co.kr/learn/courses/30/lessons/12981

 

코딩테스트 연습 - 영어 끝말잇기

3 ["tank", "kick", "know", "wheel", "land", "dream", "mother", "robot", "tank"] [3,3] 5 ["hello", "observe", "effect", "take", "either", "recognize", "encourage", "ensure", "establish", "hang", "gather", "refer", "reference", "estimate", "executive"] [0,0]

programmers.co.kr

 

def solution(n, words):
    answer=[]
    used=[words[0]]
    finish=0
    for i in range(1,len(words)):
        if words[i][0] != used[-1][-1]:
            # 끝말잇기 틀림
            finish=i
            break
        elif words[i] in used:
            # 나왔던 단어 씀
            finish=i
            break
        else: # 맞음
            used.append(words[i])

    if finish==0:
        answer=[0,0]
    else:
        answer=[(finish%n+1), (finish//n+1)]

    return answer