Cod sursa(job #81401)

Utilizator bent_larsenSturzu Antonio-Gabriel bent_larsen Data 1 septembrie 2007 21:08:31
Problema Rsir Scor 20
Compilator c Status done
Runda Arhiva de probleme Marime 0.74 kb
#include<stdio.h>


int r1,r2,a,b,x,y,z,M;


long long r(int n)
{

if(n==0) return r1;
if(n==1) return r2;
return (a*r(n-2)*r(n-2))+(b*r(n-1)*r(n-1))+(x*r(n-2))+(y*r(n-1))+z;

}



int main() 
{

int i,sir[2],rez;
int n;
FILE *f=fopen("rsir.in","r");
fscanf(f,"%i",&r1);
fscanf(f,"%i",&r2);
fscanf(f,"%i",&a);
fscanf(f,"%i",&b);
fscanf(f,"%i",&x);
fscanf(f,"%i",&y);
fscanf(f,"%i",&z);
fscanf(f,"%i",&M);
fscanf(f,"%i",&n);

sir[0]=r1;
sir[1]=r2;

printf("n=%i",n);


/*for(i=0;i<=n;i++)
{}*/




//n=7;
for(i=2;i<=n;i++)
{
rez=((((a%M)*(sir[0]%M)*(sir[0]%M))%M)+(((b%M)*(sir[1]%M)*(sir[1]%M))%M)+(((x%M)*(sir[0]%M))%M)+(((y%M)*(sir[1]%M))%M)+(z%M))%M;
sir[0]=sir[1];
sir[1]=rez;
}

f=fopen("rsir.out","w");
fprintf(f,"%i",rez%M);
fclose(f);




return 0;
}