STUDY/Python
[프로그래머스] 전화번호 목록
채소보끔
2023. 6. 7. 16:56
728x90
[나의 솔루션]
def solution(phone_book):
answer = []
for num in phone_book:
phone_book.remove(num)
for n in phone_book:
if n.find(num) == -1:
answer.append('True')
else:
answer.append('False')
phone_book.append(num)
if 'False' in answer:
return False
else:
return True
테스트 결과 3개의 테스트 케이스를 통과하였다.
그러나, 제출 후 체점하기를 하니.... 완전 난리났다..
효율성 문제에서도.. ㅜㅜㅜ
[다른 사람 코드]
def solution(phone_book):
answer = True
hash_map = {}
for phone_number in phone_book:
hash_map[phone_number] = 1
for phone_number in phone_book:
temp = ""
for number in phone_number:
temp += number
if temp in hash_map and temp != phone_number:
answer = False
return answer
[다른 사람 코드]
ef solution(phoneBook):
phoneBook = sorted(phoneBook)
for p1, p2 in zip(phoneBook, phoneBook[1:]):
if p2.startswith(p1):
return False
return True
728x90