- 문제
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
- 풀이
import java.util.Arrays;
class Solution {
public boolean solution(String[] phone_book) {
//전화번호부를 정렬합니다.
Arrays.sort(phone_book);
//이렇게 할 경우 아래와 같이 숫자의 오름차순, 길이의 오름차순으로 정렬 되는 것을 확인할 수 있다.
//따라서 인접한 부분의 숫자끼리의 접두사 체크만을 진행해도 답의 여부를 확인할 수 있습니다.
//테스트 1> [119, 1195524421, 97674223]
//테스트 3> [12, 123, 1235, 567, 88]
// System.out.println(Arrays.toString(phone_book));
//for를 통해 i+1의 번호가 i로 시작하지 않는지를 판단합니다.
for (int i = 0; i < phone_book.length - 1; i++)
if (phone_book[i + 1].startsWith(phone_book[i]))
return false;
//for를 거쳐 왔을 경우 접두어인 경우는 없음을 알 수 있습니다.
return true;
}
}
'Coding Test > Programmers' 카테고리의 다른 글
[프로그래머스] 타겟 넘버, java (0) | 2025.01.28 |
---|---|
[프로그래머스] 프로세스, java (0) | 2025.01.28 |
[프로그래머스] 피로도, java (0) | 2025.01.27 |
[프로그래머스] 기능개발, java (0) | 2025.01.21 |
[프로그래머스] 멀리 뛰기, java (0) | 2024.12.22 |