string 의 메서드를 쓸 줄 아는지 묻는 문제였다.
find() replace() 를 통해 두개로 구성된 알파벳을 특정 문자로 바꿨다.
#include <bits/stdc++.h>
using namespace std;
string s;
int start_idx;
vector<string> croa = {"lj", "dz=", "nj", "c=", "c-", "d-", "s=", "z="};
int main(void) {
ios::sync_with_stdio(0);
cin.tie(0);
cin >> s;
for(int i = 0; i < croa.size(); i++){ // 모든 단어를 찾는다
while(1){
start_idx = s.find(croa[i]);
if(string::npos == start_idx) break; // 없으면 다른 단어 찾기
s.replace(start_idx, croa[i].length(), "@"); // 찾으면 한덩이를 @ 로 변환
}
}
cout << s.length();
return 0;
}
728x90
'알고리즘 > 백준' 카테고리의 다른 글
명령 프롬프트 백준 1032번 c++ (0) | 2022.02.22 |
---|---|
저항 백준 1076번 c++ (0) | 2022.02.22 |
통계학 백준 2108번 c++ (0) | 2022.02.22 |
종이의 개수 백준 1780번 c++ (0) | 2022.02.21 |
하얀 칸 백준 1100번 c++ (0) | 2022.02.21 |