Notice
Recent Posts
Recent Comments
Link
프로그래밍 공부방
[프로그래머스] 해시_전화번호 목록 본문
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
def solution(phone_book):
answer = True
phone_book.sort()
for num in range(len(phone_book)-1):
if phone_book[num+1].find(phone_book[num]) == 0:
answer = False
break
return answer
우선 phone_book을 sort()로 정렬한다.
그러면 값들이 정렬이 되어 ex) "119" "1195524421" 이런 순으로 정렬이 된다.
따라서 빠른 비교가 가능해진다.
이미 정렬이 된 상태이기 때문에!
phone_book에서 0번 인덱스와 1번 인덱스 / 1번 인덱스와 2번 인덱스 이런 식으로 2개씩 비교를 하게 한다.
나의 경우에는 두 번째로 나오는 값 안에 첫 번째 값이 들어있다면 answer가 false가 되도록 했다.
문제에서 준 조건이 한 번호가 다른 번호의 접두어인 경우이기 때문에 find를 한 값이 0일 때로 설정을 했다.
break를 사용해서 정답을 찾으면 반복을 바로 끝내도록 했다.
'프로그래밍 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 2018 KAKAO BLIND RECRUITMENT [1차] 비밀지도 (0) | 2022.06.25 |
---|---|
[프로그래머스] 2018 KAKAO BLIND RECRUITMENT_다트 게임 (0) | 2022.06.18 |
[프로그래머스] 스택/큐_프린터 (0) | 2022.01.13 |
[프로그래머스] 스택/큐_기능개발 (0) | 2022.01.13 |
[프로그래머스] 해시_완주하지 못한 선수 (0) | 2022.01.04 |
Comments