典型的快速幂成应用
题意:求x 使得x^e%n=num
#include<iostream> using namespace std; bool funtion(int x,int e,int n,int num) {// m^n % k int b = 1; while (e > 0) { if (e & 1) b = (b*x)%n; e = e >> 1 ; x = (x*x)%n; } if(b==num) return true; return false; } int main() { int p,q,e,l,c,n; while(scanf("%d%d%d%d",&p,&q,&e,&l)!=EOF) { n=p*q; while(l--) { scanf("%d",&c); for(int i=0;i<=255;i++) if(funtion(i,e,n,c)) { printf("%c",i); break; } } printf(" "); } return 0; }