프로그래머스 코딩테스트 연습/Level2

[프로그래머스][JAVA] 전화번호 목록

긷뚜 2021. 5. 6. 12:34
728x90

programmers.co.kr/learn/courses/30/lessons/42577

 

코딩테스트 연습 - 전화번호 목록

전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조

programmers.co.kr

해시 카테고리에 있었지만 해시문제인지는 잘 모르겠다

배열을 오름차순 정렬한다면 현재 위치 이전의 값이 접두어가 아니라면 그 외의 값들은 절대 접두어일 수 없다는 점을 이용하여 풀었다

import java.util.*;

class Solution {
    public boolean solution(String[] phone_book) {
        boolean answer = true;
        Arrays.sort(phone_book);
        for(int i=1;i<phone_book.length;i++){
            if(phone_book[i].indexOf(phone_book[i-1])==0){
                return false;
            }
        }
 
        return answer;
    }
}
728x90