CS/Algorithm

해시 > 전화번호 목록

KJY 2021. 4. 4. 22:23

문제

코딩테스트 연습 - 전화번호 목록

풀이

def solution(phone_book):
    answer = True
    phone_book.sort()
    for i in range(1, len(phone_book)):
        compare = phone_book[i -1]
        compare_1 = phone_book[i]
        if compare == compare_1[:len(compare)]:
            answer = False
            return answer
    return answer

속도

  • min : 통과 (0.00ms, 10.1MB)
  • max : 통과 (109.85ms, 30.5MB)

다른 풀이

해시로 풀려고 했는데 아무리 생각해도 속도가 느릴거 같다.

hash_func을 새로 정의해볼까도 생각했는데 접두사에 길이가 정해져 있으면 가능했을거 같은데 그런게 아니라 거의 불가능에 가까운것 같다.