문제 풀이/99클럽
[99클럽] 1일차 TIL
동까의 코딩
2024. 5. 20. 22:42
반응형
TIL(Today I Learned)으로 최대한 꾸준히 써보려고 합니다.
2024.05.20 시작으로 6월말까지 진행합니다.
반은 3단계 중 중간 단계로 들어갔고, 비기너/미들러/챌린저로 나눠지고 나는 미들러로 참여하였습니다.
오늘 풀어본 문제는 프로그래머스에 전화번호 목록입니다.
https://school.programmers.co.kr/learn/courses/30/lessons/42577
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
전화번호가 시작부분이 겹치지 않는 것을 목표로 진행하였습니다.
해쉬 문제이므로 최대한 해쉬로 풀어보려고 노력하였습니다.
풀이 과정
def solution(phone_book):
answer = True
hashmap = {}
for number in phone_book:
hashmap[number] = 1
for phone_number in phone_book:
start_number = ""
if not answer:
break
for number in phone_number:
start_number += number
if start_number in hashmap and start_number != phone_number:
answer = False
break
return answer
해쉬맵에 값을 넣어주고, 하나씩 값을 추가해주고 비교하는 코드를 작성하였습니다.
중간에 접두사가 발견되면 바로 반복문을 종료시키고 False를 출력하게 됩니다.
반응형