Python/CoTe

[programmers] 영어 끝말잇기

joannekim0420 2022. 3. 12. 15:04
728x90

https://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):
    used = []
    used.append(words[0])
    for i in range(1,len(words)):
        if words[i] not in used:
            #끝말잇기가 아닐 때
            if words[i][0] != words[i-1][-1]:              
                return [(i+1)%n,(i//n)+1] if (i+1)%n != 0 else [n,(i//n)+1]
            else:   used.append(words[i])
        # 이미 나온 단어
        else:
            return [(i+1)%n,(i//n)+1] if (i+1)%n != 0 else [n,(i//n)+1]
    return [0,0]

 

 

이미 사용한 단어들을 저장할 수 있는 리스트 사용