programmers.co.kr/learn/courses/30/lessons/42577?language=python3
유형
- 해시
풀이
1 | 1 | 9 |
1 | 1 | 9 | 5 | 6 |
숫자가 '119' '11956'이 주어졌다고 했을때,
- 내림차순 정렬
11965를 슬라이싱 한다.
set 자료구조를 사용해서
11965, 1196, 119, 11, 1을 set에 넣는다
이제 다음 숫자인 119가 set에 포함되는지 아닌지를 알 수 있다.
따라서 다음 숫자가 set에 존재하면 false, 아니면 true를 반환하면 된다.
코드
def solution(phone_book):
answer = True
number = set()
phone_book = sorted(phone_book, reverse = True)
for book in phone_book:
size = len(book)
if book in number:
answer = False
break
for i in range(size-1, 0, -1):
arr = book[:i]
number.add(arr)
return answer
'알고리즘 > 프로그래머스' 카테고리의 다른 글
프로그래머스 - (Python)실패율 (0) | 2021.05.12 |
---|---|
프로그래머스 - (Python, Java) 오픈채팅방 (0) | 2021.05.03 |
프로그래머스 - 영어 끝말잇기 (0) | 2021.04.23 |
프로그래머스 - 최솟값 만들기 (0) | 2021.04.13 |
프로그래머스 - 튜플프로그래머스 - 튜플 (0) | 2021.04.05 |