답안 #201449

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
201449 2020-02-10T15:23:49 Z EmmanuelAC 고장난 휴대전화기 (COCI14_mobitel) C++14
50 / 50
5 ms 376 KB
#include<bits/stdc++.h>
using namespace std;

char v[9];
char last, curr;

int key(char c){
    if(c >= 'a' && c <= 'c'){
      curr = v[1];
      return 1 + (int)(c - 'a');
    }
    if(c >= 'd' && c <= 'f'){
      curr = v[2];
      return 1 + (int)(c - 'd');
    }
    if(c >= 'g' && c <= 'i'){
      curr = v[3];
      return 1 + (int)(c - 'g');
    }
    if(c >= 'j' && c <= 'l'){
      curr = v[4];
      return 1 + (int)(c - 'j');
    }
    if(c >= 'm' && c <= 'o'){
      curr = v[5];
      return 1 + (int)(c - 'm');
    }
    if(c >= 'p' && c <= 's'){
      curr = v[6];
      return 1 + (int)(c - 'p');
    }
    if(c >= 't' && c <= 'v'){
      curr = v[7];
      return 1 + (int)(c - 't');
    }
    if(c >= 'w' && c <= 'z'){
      curr = v[8];
      return 1 + (int)(c - 'w');
    }
} 

int main(){
    for(int i=0; i<9; i++){
        int aux; cin >> aux;
        v[aux -1] = (char)('1' +i);
    }

    string s; cin >> s;

    last = '*';
    for(auto c : s){
        int k = key(c);

        if(curr == last)
            cout << "#";
    
        for(int i=0; i<k; i++)  cout << curr;

        last = curr;
    }

    cout << "\n";

}

Compilation message

mobitel.cpp: In function 'int key(char)':
mobitel.cpp:40:1: warning: control reaches end of non-void function [-Wreturn-type]
 } 
 ^
# 결과 실행 시간 메모리 Grader output
1 Correct 5 ms 256 KB Output is correct
2 Correct 5 ms 256 KB Output is correct
3 Correct 5 ms 256 KB Output is correct
4 Correct 5 ms 256 KB Output is correct
5 Correct 5 ms 376 KB Output is correct
6 Correct 5 ms 256 KB Output is correct
7 Correct 5 ms 376 KB Output is correct
8 Correct 5 ms 376 KB Output is correct
9 Correct 5 ms 256 KB Output is correct
10 Correct 5 ms 256 KB Output is correct