https://www.acmicpc.net/problem/5052

 

5052번: 전화번호 목록

문제 전화번호 목록이 주어진다. 이때, 이 목록이 일관성이 있는지 없는지를 구하는 프로그램을 작성하시오. 전화번호 목록이 일관성을 유지하려면, 한 번호가 다른 번호의 접두어인 경우가 없어야 한다. 예를 들어, 전화번호 목록이 아래와 같은 경우를 생각해보자 긴급전화: 911 상근: 97 625 999 선영: 91 12 54 26 이 경우에 선영이에게 전화를 걸 수 있는 방법이 없다. 전화기를 들고 선영이 번호의 처음 세 자리를 누르는 순간 바로 긴급전화가

www.acmicpc.net

 

import sys

for _ in range(int(input())):
    n = int(sys.stdin.readline())
    flag = "YES"
    li = []
    for _ in range(n):
        li.append(sys.stdin.readline().rstrip('\n'))

    li.sort()
    for i, j in zip(li, li[1:]):
        if i == j[:len(i)]:
            flag = "NO"

    print(flag)

'코딩테스트 > BOJ' 카테고리의 다른 글

[BOJ] 16929 Two Dots (python)  (0) 2020.09.03
[BOJ] 10026 적록색약 (python)  (0) 2020.09.03
백준 #13549 숨바꼭질3 (Python)  (0) 2020.04.12
백준 #9251 LCS [Python]  (0) 2020.03.27
백준 #1655 가운데를 말해요 [Python]  (0) 2020.03.27

+ Recent posts