#include #include #include using namespace std; int main() { int N, k, n; ifstream is("message.txt"); is >> N; for (int i = 0;i < N; i++) { string msg, cry, tmp; is >> cry >> msg; for (int j = cry.size()-1;j >= 0; j--) { switch (cry[j]) { case 'C': msg = msg.substr(1) + msg[0]; break; case 'J': msg = msg[msg.size()-1] + msg.substr(0, msg.size()-1); break; case 'E': if (msg.size() % 2 == 0) { msg = msg.substr(msg.size()/2) + msg.substr(0, msg.size()/2); } else { msg = msg.substr(msg.size()/2+1) + msg[msg.size()/2] + msg.substr(0, msg.size()/2); } break; case 'A': tmp = msg; msg = ""; for (k = 0; k < tmp.size(); k++) { msg += tmp[tmp.size()-k-1]; } break; case 'M': for (k = 0; k < msg.size(); k++) { if (msg[k] >= '0' && msg[k] <= '9') { msg[k] = "1234567890"[msg[k]-'0']; } } break; case 'P': for (k = 0; k < msg.size(); k++) { if (msg[k] >= '0' && msg[k] <= '9') { msg[k] = "9012345678"[msg[k]-'0']; } } break; } } cout << msg << endl; } }