본문 바로가기
Algorithm/programmers

[프로그래머스] 전화번호 목록 (C++)

by shine-jung 2021. 9. 17.
반응형

문제 링크

 

코딩하기 전 생각하기

/*
전화번호부를 오름차순으로 정렬한다.
전화번호부를 순회한다.
    앞 전화번호가 뒷 전화번호의 접두어이면 false를 반환한다.
*/

 


 

코드

#include <bits/stdc++.h>
using namespace std;

bool solution(vector<string> phone_book) {
    
    sort(phone_book.begin(), phone_book.end());
    
    for (int i=0; i < phone_book.size()-1; i++) {
        if(phone_book[i] == phone_book[i+1].substr(0, phone_book[i].length()))
            return false;
    }
    
    return true;
}

 


 

느낀점

 

유의해야 할 점은 전화번호부를 숫자순으로 정렬하면 안되고, 사전순으로 정렬해야 한다.

 

(주의) 기록용으로 작성한 글입니다. 코드가 허접하거나 알고리즘의 효율이 낮을 수 있습니다.

댓글 환영합니다!

반응형

댓글