본문 바로가기
공부/프로그래머스

[프로그래머스] 42577번

by _음주토끼_ 2022. 6. 15.

예를 들어 119, 1195334라는 번호가 있다면,

1195334라는 번호에서 119가 맨 처음 들어가있으므로 전화번호부 내에 있는 119가 저 번호의 접두사가 된다.

이때는 false를 출력한다.

한 번호가 다른 번호의 접두사가 되는 경우가 없으면, true를 출력한다.

간단한 듯 될락말락하는 문제였다.

우선 순서를 빠르게 하기위해 받은 배열 phone_book을 오름차순 정렬했다.

한 번호가 다른 번호의 접두어로 존재하면 false이므로, for 문 내에서 그것을 판별하고 결과를 내면 된다.

i번째 전화번호가 이후의 번호(오름차순으로 정렬했기 때문에 뒤만 고려해주면 됨) 중 접두어(:len(번호[i]))인지

판별하고, 그렇다면 return False를 한다. 함수 내에서 return을 주면 반복문 내의 break와 같은 기능이 되므로!

반복문을 다 돌았는데도 접두어로 존재하는 번호가 없다면 통과. return True를 해주면 된다.

 

'공부 > 프로그래머스' 카테고리의 다른 글

[프로그래머스] 86051번  (0) 2022.06.15
[프로그래머스] 59413번  (0) 2022.06.15
[프로그래머스] 42840번  (0) 2022.06.15
[프로그래머스] 42626번  (0) 2022.06.15
[프로그래머스] 42746번  (0) 2022.06.15