https://school.programmers.co.kr/learn/courses/30/lessons/42577
문제

풀이
전화번호의 형식이 string이므로, find 함수를 사용하면 포함여부를 확인할 수 있다.
접두어인 경우만 확인해야하므로 정렬한 후에 수행한다.
.find() 메서드의 경우, 해당 문자/문자열이 있으면 시작하는 인덱스를 반환한다.
접두어라면 0을 반환할 것이므로, 0인 경우에만 false로 값을 변경한다.
#include <bits/stdc++.h>
using namespace std;
bool solution(vector<string> phone_book) {
bool answer = true;
sort(phone_book.begin(), phone_book.end());
for(int i=0; i<phone_book.size()-1; i++){
if(!phone_book[i+1].find(phone_book[i])){
answer = false;
return answer;
}
}
return answer;
}
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
| [PG / C++] 프로그래머스 스티커 모으기 (2) (0) | 2025.03.20 |
|---|---|
| [PG / C++] 프로그래머스 가장 큰 수 (0) | 2025.02.18 |
| [PG / C++] 프로그래머스 등굣길 (0) | 2025.02.15 |
| [PG / C++] 프로그래머스 베스트앨범 (0) | 2025.02.13 |
| [PG / C++] 프로그래머스 의상 목록 (0) | 2025.02.12 |