list에 있는 원소들을 처음부터 for문을 돌려가면서 앞에 접두사인지 확인하면 되는 문제이다.
def solution(phone_book):
phone_book.sort()
for i, j in zip(phone_book, phone_book[1:]):
if j.startswith(i):
return False
return True
이렇게 풀었다!
zip() 함수
동일한 개수로 이루어진 자료형을 묶어주는 역할을 하는 함수.
예시) list (zip([1,2,3],[4,5,6]))
-> [(1,4),(2,5),(3,6)]
이런식으로 순서대로 묶어서 나타내준다.
따라서 정렬된 phone_book 과 phone_book1: 묶어서 startwith 함수를 이용해서 접두사인지 확인해줘서 False를 return 하면된다.
zip 함수와 startwith endwith 함수 유용