def solution(phone_book):
answer = True
phone_book.sort()
for i in range(len(phone_book)-1):
next_num = phone_book[i+1]
if phone_book[i] == next_num[:len(phone_book[i])]:
return False
return answer
단순하게 정렬 후 앞의 것과 비교하면 오류가 날 것이다. (13번 테스트 케이스에서 막힌다)
이유는, 324356 의 접두어는 3,32,324,...가 되는데 56의 경우에도 저 조건문을 통과하기 때문이다.
단순한 정렬에서, 다음 전화번호의 길이를 조정해서 비교해주면 ([:len(beforePhone)]) 통과할 수 있다.