1 #include <iostream> 2 #include <sstream> 3 #include <string> 4 #include <algorithm> 5 #include <vector> 6 #include <map> 7 using namespace std; 8 9 #define GI ({int _t; scanf("%d", &_t); _t;}) 10 #define FOR(i, a, b) for (int i=a; i<b; i++) 11 #define REP(i, a) FOR(i, 0, a) 12 template<class T> string toString(T n){ostringstream ost;ost<<n;ost.flush();return ost.str();} 13 int toInt(string s){int r=0;istringstream sin(s);sin>>r;return r;} 14 #define DBGV(_v) { REP(_i, _v.size()) { cout << _v[_i] << "\t";} cout << endl;} 15 16 int main() { 17 vector <string> keyboard; 18 map <char, char> mapping; 19 keyboard.push_back("`1234567890-="); keyboard.push_back("QWERTYUIOP[]\\"); keyboard.push_back("ASDFGHJKL;'"); keyboard.push_back("ZXCVBNM,./"); 20 REP(i, keyboard.size()) { 21 FOR(j, 1, keyboard[i].size()) { 22 mapping[keyboard[i][j]] = keyboard[i][j-1]; 23 } 24 } 25 string line; 26 while (getline (cin, line)) { 27 REP(i, line.size()) { 28 if (line[i] == ' ') printf(" "); 29 else { printf("%c", mapping[line[i]]); } 30 } 31 printf("\n"); 32 } 33 return 0; 34 }