Cod sursa(job #1649597)

Utilizator ipus1Stefan Enescu ipus1 Data 11 martie 2016 14:21:08
Problema Koba Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<cstdio>
int ma[11][11][11];
int v[2001];
int main ()
{freopen ("koba.in","r",stdin);
freopen ("koba.out","w",stdout);
int n,i,x,y,z,t,s,k,pp;
scanf("%d%d%d%d",&n,&x,&y,&z);
x%=10;
y%=10;
z%=10;
ma[10][10][x]=1;
ma[10][x][y]=2;
ma[x][y][z]=3;
v[1]=x;
v[2]=v[1]+y;
v[3]=v[2]+z;
pp=1;
k=3;
for(i=4;i<=n&&pp==1;i++)
    {t=(x*y+z)%10;
    x=y;
    y=z;
    z=t;
    if(ma[x][y][z]>0)
        pp=0;
    else
        {k++;
        v[k]=v[k-1]+t;
        ma[x][y][z]=i;
        }
    }
n-=ma[x][y][z]-1;
s=v[ma[x][y][z]-1];
s+=(n/(k-ma[x][y][z]+1))*(v[k]-v[ma[x][y][z]-1]);
s+=v[n%(k-ma[x][y][z]+1)+ma[x][y][z]-1]-v[ma[x][y][z]-1];
printf("%d",s);
return 0;
}