[programmers] 전화번호 목록

KwonSC·2022년 5월 8일
0

programmers - Python

목록 보기
2/23
post-thumbnail

https://programmers.co.kr/learn/courses/30/lessons/42577


Code

def solution(phone_book):
    phone_book.sort()
    for p1, p2 in zip(phone_book, phone_book[1:]):
        if (p2.startswith(p1)):
            return False
    return True

Solution

일단 phone_book을 정렬시키고 zip()을 통해 phone_book과 앞의 원소가 빈 phone_bookp1, p2로 둔다음 startswith()로 p2에서 p1이 시작하는지 체크를 한다. 서로 전체를 비교하지 않아도 되는 이유는 정렬을 통해 같은 이름으로 시작하는 원소들끼리는 붙어있기때문에 각자 앞뒤로 원소를 비교만 해도 정답을 찾을수 있기 때문이다.

0개의 댓글