Coding Is My Life

코딩은 인생

c++ 백준 문제 풀이

백준- 크로아티아 알파벳[2941번]

산기대 컴공 2020. 10. 15. 23:50
728x90

https://www.acmicpc.net/problem/2941

 

2941번: 크로아티아 알파벳

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

www.acmicpc.net

이번문제는 조건에 맞게 크로아티아 알파벳을 앞글자의 따라 경우를 나눠서 간단하지만 길게 풀은 것 같다.

더 쉽게 푸는 방법도 많겠지만 가장 먼저 생각나는 방법으로 풀었다...

 

소스코드

#include <iostream>
#include <algorithm>
#include <queue>
#include <vector>
#include <cstring>
#include <stdio.h>
using namespace std;
int main(void){
int cnt = -1,result = 0;
    char word[100+1];
    memset(word,'!',100+1);
    cin >> word;
    for(int i = 0;i<=100;i++){
     if(word[i] == '!'){
     break;
     }
     else{
     cnt++;
     }
    }
    for(int i = 0;i<cnt;i++){
     //cout << word[i]<<" "<<result<<"\n";
    
     if(word[i] == 'c'){
     if(word[i+1] == '='){
     result++;
     i++;
     continue;
     }
     else if(word[i+1] == '-'){
     result++;
     i++;
     continue;
     }
     else{
     result++;
     continue;
     }
     }
     else if(word[i] == 'd'){
     if(word[i+1] == '-'){
     result++;
     i++;
     continue;
     }
     else if(word[i+1] == 'z'){
     if(word[i+2] == '='){
     result++;
     i = i+2;
     continue;
     }
     else{
     result++;
     continue;
     }
     }
     else{
     result++;
     continue;
     }
     }
     else if(word[i] == 'l'){
     if(word[i+1] == 'j'){
     result++;
     i++;
     continue;
     }
     else{
     result++;
     continue;
     }
     }
     else if(word[i] == 'n'){
     if(word[i+1] == 'j'){
     result++;
     i++;
     continue;
     }
     else{
     result++;
     continue;
     }
     }
     else if(word[i] == 's'){
     if(word[i+1] == '='){
     result++;
     i++;
     continue;
     }
     else{
     result++;
     continue;
     }
     }
      else if(word[i] == 'z'){
     if(word[i+1] == '='){
     result++;
     i++;
     continue;
     }
     else{
     result++;
     continue;
     }
     }
     else{
     result++;
     }
    }
    cout << result;
}

728x90