기타
프로그래머스 파이썬 전화번호 목록
작지
2021. 11. 6. 03:26
링크 : https://programmers.co.kr/learn/courses/30/lessons/42577
코딩테스트 연습 - 전화번호 목록
전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조
programmers.co.kr
phone_book 의 길이가 100만 이하이기 때문에 이중 for 문을 돌렸다가는 시간초과가 날것이 분명했다.
한번의 for 문으로 결과를 내야하기 때문에 sort값을 이용해 정렬 후
for i in range(len(phone_book)-1) 이후
phone_book[i+1]이 phone[i] 로 시작하는지 체크. 이후 answer 값을 도출함.
startswith 함수를 이용해 서치를 했다.
def solution(phone_book):
answer = True
phone_book.sort()
for i in range(len(phone_book) - 1):
if phone_book[i + 1].startswith(phone_book[i]):
answer = False
else:
continue
return answer