Cod sursa(job #1746740)

Utilizator radu9876Radu Sirghe radu9876 Data 23 august 2016 20:28:49
Problema Iepuri Scor 40
Compilator c Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int t,i=0;
    FILE *fin, *fout;
    fin=fopen("iepuri.in","r");
    fout=fopen("iepuri.out","w");
    fscanf(fin,"%u",&t);
    for(i=0;i<t;i++){
        unsigned int x,y,z,a,b,c,n,j;
        fscanf(fin,"%u %u %u %u %u %u %u",&x,&y,&z,&a,&b,&c,&n);
        unsigned int *nr=calloc(n+1,4);
        //unsigned int nr[n+1];
        nr[0]=x; nr[1]=y; nr[2]=z;
        for(j=3;j<=n;j++){
            nr[j]=(nr[j-1]*a+nr[j-2]*b+nr[j-3]*c)%666013;
            if(nr[j]==nr[2] && nr[j-1]==nr[1] && nr[j-2]==nr[0]){
                j=(j-2)*((n-2)/(j-2))+2;
                nr[j]=nr[2];nr[j-1]=nr[1];nr[j-2]=nr[0];
            } ;
        }
        fprintf(fout,"%u\n",(int)nr[n]);
    }
    return 0;
}