Posts [알고리즘] 프로그래머스 - 전화번호 목록
Post
Cancel

[알고리즘] 프로그래머스 - 전화번호 목록


문제

전화번호 목록


접근

전화번호를 정렬한 후 시작하면 생각보다 간단한 문제가 된다.
현재 번호가 바로 다음 번호의 접두사인지만 확인하면 되는 문제이다.

  1. 바로 다음 번호가 접두사가 아니라면, 나머지 번호들도 접두사가 아니다.
  2. 뒷 번호가 앞번호의 접두사가 되는 경우가 존재하지 않는다.
  3. 문자의 길이를 체크할 필요가 없다.
    • 다음 번호의 접두사라면, 다음 번호보다 짧거나 같다.
    • 다음 번호의 접두사가 아니라면, 현재 번호의 끝까지 확인하기 전에 다른 숫자가 나오게 된다.

코드

  • 파이썬 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
def solution(phone_book):
    answer = True
    phone_book.sort()
    for i in range(len(phone_book)-1):
        flag = True
        for j in range(len(phone_book[i])):
            if phone_book[i][j] != phone_book[i+1][j]:
                flag = False
                break
        if flag == True:
            answer=False
            break
    return answer


This post is licensed under CC BY 4.0 by the author.

[알고리즘] 프로그래머스 - 영어 끝말잇기

[알고리즘] 프로그래머스 - 멀쩡한 사각형