유블로그

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

알고리즘

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

yujeong kang 2020. 12. 19. 13:05

프로그래머스 level2 전화번호목록

 

소요시간 10~20분...??? 기억이 잘 안난다

 

모든 전화번호를 확인하는 방식으로 했다.

다른 전화번호와 비교하는데 길이가 더 짧은 번호가 길이가 더 긴 번호의 시작인지 확인..

 

다른 사람코드를 보니 정렬 먼저 하고 startwith 함수 써서 굉장히 효율적이고 간단하게 짜더라...

난 언제쯤 그렇게 잘 짜게 될까 ㅎ,ㅎ

 

public boolean solution(String[] phone_book) {
  int N = phone_book.length;

  String a, b;
  for (int i = 0; i < N; i++) {
    a = phone_book[i];
    for (int j = 0; j < N; j++) {
      if(i == j) continue;
      b = phone_book[j];
      boolean end = true;
      for (int k = 0; k < a.length(); k++) {
        if(k >= b.length()) {
          end = false;
          break;
        }
        if(a.charAt(k) != b.charAt(k)) {
          end = false;
          break;
          }
        }
        if(end) return false;
    }
  }
  return true;
}