#include<cstdio>
#include<iostream>
typedef long long LL;
using namespace std;
const int mod=10001;
LL d,x[10000],t,k,b,temp;
int solve(LL p,LL q,LL &x,LL &y)
{
int t;
if(q==0)
{
x=1;
y=0;
return p;
}
else
{
d=solve(q,p % q,x,y);
t=x;
x=y;
y=t-p/q*y;
}
return d;
}
int main()
{
scanf("%d",&t);
for(int i=1;i<=2*t;i+=2)
scanf("%lld",&x[i]);
//cout<<x[1]<<x[3]<<x[5];
for(int a=0;a<=10000;a++)
{
int flag=1;
//cout<<k<<" "<<b<<endl;
d=solve(mod,a+1,k,b);
// cout<<d<<endl;
// cout<<d<<endl;
temp=x[3]-a*a*x[1];
if(temp%d)continue;
b=b*temp/d;
//cout<<b<<endl;
for(int i=2;i<=2*t;i++)
{
if(i%2)
{
// cout<<i<<endl;
if((x[i]!=((x[i-1]*a+b)%mod)))
{
flag=0;
break;
}
}
else x[i]=(x[i-1]*a+b)%mod;
}
// cout<<flag<<endl;
if(flag)
{
for(int j=2;j<=2*t;j+=2)
printf("%lld\n",x[j]);
break;
}
}
return 0;
}
UVA 12169(p316)----Disgruntled Judge
最新推荐文章于 2020-02-07 20:34:47 发布