https://school.programmers.co.kr/learn/courses/30/parts/12077
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
bool solution(vector<string> phone_book) {
int num = phone_book.size();
sort(phone_book.begin(), phone_book.end());
for (int i = 0; i < num - 1; i++)
if (phone_book[i] == phone_book[i + 1].substr(0, phone_book[i].size()))
return (false);
return true;
}
생각보다 오래 걸렸다. 효율성 3, 4번에서 계속 시간초과가 났는데, 생각해 보니 이중 반복문을 돌 필요 없이 sort 함수에서 아스키 순으로 정렬을 해 주므로 반복문 하나에서 붙어있는 아이끼리만 비교해 주면 되었다. 어이없당..
'<algorithm> > 프로그래머스_고득점 kit' 카테고리의 다른 글
[프로그래머스 고득점kit] 해시_베스트앨범(c++) (2) | 2023.04.06 |
---|---|
[프로그래머스 고득점kit] 해시_위장(c++) (0) | 2023.04.06 |
[프로그래머스 고득점kit] 해시_완주하지 못한 선수(c++) (2) | 2023.03.31 |
[프로그래머스 고득점kit] 해시_폰켓몬(c++) (0) | 2023.03.31 |
[프로그래머스 고득점kit] 완전탐색_모의고사(c++) (0) | 2023.03.26 |