티스토리 뷰

반응형

www.acmicpc.net/problem/2941

 

2941번: 크로아티아 알파벳

예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z=

www.acmicpc.net

 


⊙ 문제

⊙ 입력

⊙ 출력

⊙ 예제 입출력

⊙ 알고리즘 분류

  • 구현
  • 문자열

 


 

⊙ 문제 접근 과정

 

배열에 크로아티아 알파벳을 넣어주고 입력받은 문자열에 있는지 없는지 찾아줬다.

있다면 다른 하나의 문자로 변경해주고 마지막에는 변경된 입력받은 문자열의 길이를 출력해주었다.

 

string::npos는 find() 함수에서 찾는 단어나 문자열이 없으면 나오는 리턴 값이다.


 

⊙ 문제 풀이

 

#include <iostream>
#include <string>
#include <vector>

using namespace std;

int main() {
    vector<string> v = {"c=","c-","dz=","d-","lj","nj","s=","z="};
    int a;
    string input;
    cin >> input;
    
    for (int i =0; i<8; i++) {
        a = input.find(v[i]);
        for (; a != string::npos; a = input.find(v[i])) {
            input.replace(a, v[i].length(),"@");
        }
    }

    cout << input.length();
}

 


⊙ 결과

 

 


⊙ 마무리

 

 

NONE

 

좋아요 로그인하지 않아도 누를 수 있습니다!

 

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함