728x90
반응형
https://school.programmers.co.kr/learn/courses/30/lessons/120956
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
https://jjomnoon-diary.tistory.com/59
[Programmers] 외계어 사전(c++)
https://school.programmers.co.kr/learn/courses/30/lessons/120869 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 중복된 문자가 있으면
jjomnoon-diary.tistory.com
위와 비슷한 유형의 문제.
문자열 지우고 지운 곳의 위치에 공백을 추가하여 발음할 수 있는 개수를 찾는다.
공백을 추가하는 이유는 예를 들어 " yemwooa" 라는 문자열이 있을 때, 지우기만 한다면 순서에 따라 ye, woo, ma가 다 나오기 때문에 정답이 나올 수 없다. 그래서 구분자를 공백으로 추가한 것.
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
vector<string> b = { "aya", "ye", "woo", "ma" };
int solution(vector<string> babbling) {
int answer = 0;
for (int i = 0; i < babbling.size(); i++)
{
for (int j = 0; j < b.size(); j++)
{
auto iter = babbling[i].find(b[j]);
if (iter != string::npos)//exist
{
babbling[i].erase(iter, b[j].size());
babbling[i].insert(iter, " ");
}
}
}
for (int i = 0; i < babbling.size(); i++)
{
babbling[i].erase(remove(babbling[i].begin(), babbling[i].end(), ' '), babbling[i].end());
if (babbling[i].empty())
{
++answer;
}
}
return answer;
}
728x90
반응형
'개발일지 > 코딩테스트' 카테고리의 다른 글
[Programmers] 완주하지 못한 선수 (C++) (0) | 2025.04.03 |
---|---|
[Programmers] 약수의 개수와 덧셈(C++) (0) | 2025.04.03 |
[Programmers] 외계어 사전(c++) (0) | 2025.04.02 |
[Programmers] 합성 수 찾기 (c++) (0) | 2025.03.31 |
[Programmers] 가장 큰 수(c++) (0) | 2025.03.31 |