Pagini recente » Cod sursa (job #991081) | Cod sursa (job #2848297) | Cod sursa (job #2623436) | Cod sursa (job #994854) | Cod sursa (job #1799639)
#include<fstream>
using namespace std;
ifstream f("rsir.in");
ofstream g("rsir.out");
int m,i,j,x,y,u,v,p,q,z,a[1<<13],b[1<<13];
void next()
{
int aux=a[p]+b[q]+z;
if(aux>=m) aux-=m;
if(aux>=m) aux-=m;
p=q;
q=aux;
}
long long n;
int main()
{
f>>p>>q>>u>>v>>x>>y>>z>>m>>n;
for(i=0;i<m;++i)
a[i]=1LL*i*(u*i+x)%m,
b[i]=1LL*i*(i*v+y)%m;
z%=m;
for(i=1;i<=min(1LL*m*m,n);++i) next();
x=p;
y=q;
if(i==n+1)
{
g<<x;
return 0;
}
n-=m*m;
for(i=1;i<=n;++i)
{
next();
if(p==x&&q==y) break;
}
n=(n-i)%i;
for(i=1;i<=n;++i) next();
g<<p;
}