/* 一开始以为自己题目理解错了,一开始以为M 与 m 是不一样的,搞的我郁闷死 该题只要解密就可以了,题目有不必要的信息 */ #include <iostream> #include <cstdio> using namespace std; int main() { int p, q, e, l; while( scanf("%d %d %d %d", &p, &q, &e, &l) != EOF ) { int n = p * q; int fn = (p -1) * (q - 1); int d = 1; while(d * e % fn != 1) d++; int graph; int t; int temp; for(int i = 0; i < l; i++) { scanf("%d", &graph); t = d; temp = 1; while(t--) { temp *= graph; temp %= n; } printf("%c", temp); } printf("/n"); } return 0; }