제출 #1163794

#제출 시각아이디문제언어결과실행 시간메모리
1163794mrkimedoMobitel (COCI19_mobitel)C++20
0 / 130
0 ms328 KiB
#include <bits/stdc++.h> using namespace std; map <char, string> tra; bool check(char a, char b) { if (tra[a][0] == tra[b][0]) return true; return false; } int main() { tra['a'] = "2"; tra['b'] = "22"; tra['c'] = "222"; tra['d'] = "3"; tra['e'] = "33"; tra['f'] = "333"; tra['g'] = "4"; tra['h'] = "44"; tra['i'] = "444"; tra['j'] = "5"; tra['k'] = "55"; tra['l'] = "555"; tra['m'] = "6"; tra['n'] = "66"; tra['o'] = "666"; tra['p'] = "7"; tra['q'] = "77"; tra['r'] = "777"; tra['s'] = "7777"; tra['t'] = "8"; tra['u'] = "88"; tra['v'] = "888"; tra['w'] = "9"; tra['x'] = "99"; tra['y'] = "999"; tra['z'] = "9999"; vector <char> beh(10); for (int i = 0; i < 9; i++) { char x; cin >> x; beh[x-'0']=i+1+'0'; } string s, s2 = ""; cin >> s; s2 = tra[s[0]]; for (int i = 1; i < s.size(); i++) { if (check(s[i], s[i-1])) s2 += '#'; s2 += tra[s[i]]; } for (int i = 0; i < s2.size(); i++) if (s2[i] != '#') s2[i] = beh[s2[i] -'0']; cout << s2 << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...