51Nod_1014 X^2 Mod P
http://www.51nod.com/Challenge/Problem.html#!#problemId=1014
题目
X*X mod P = A,其中P为质数。给出P和A,求<=P的所有X。
输入
两个数P A,中间用空格隔开。(1 <= A < P <= 1000000, P为质数)
输出
输出符合条件的X,且0 <= X <= P,如果有多个,按照升序排列,中间用空格隔开。如果没有符合条件的X,输出:No Solution
样例输入
13 3
样例输出
4 9
分析
枚举
C++程序
#include<iostream>
using namespace std;
int main()
{
long long P,A;
cin>>P>>A;
bool flag=false;
for(long long x=0;x<=P;x++)
if(x*x%P==A){
if(flag==true)
cout<<" ";
cout<<x;
flag=true;
}
if(flag==false)
cout<<"No Solution"<<endl;
return 0;
}