#include<iostream>
#include<cstring>
using namespace std;
#define Size 10000
int Prime( int x )
{
int NotPrime = 0;
if( x==1||x==0 )
return 2;
if( x==2 || x==3 )
return x;
for( int i=2; i*i<=x; i++ )
{
if( x%i==0 ){
NotPrime = 1;
break;
}
}
if( !NotPrime )
return x;
else
{
x++;
return Prime(x);
}
}
int main()
{
int M, N, X, i;
bool Table[Size+1];
memset( Table, false, sizeof(Table) );
cin>>M>>N;
M = Prime(M);
while( N-- )
{
cin>>X;
for( i=0; i<M; i++ )
{
if( Table[(X+i*i)%M]==false )
{
cout<<(X+i*i)%M<<( N ? " " : "\n" );
Table[(X+i*i)%M]=true;
break;
}
}
if( i==M )
cout<<"-"<<( N ? " " : "\n" );
}
return 0;
}
排名到47页啦~~
虽然都是水的···