Cod sursa(job #516587)

Utilizator Magnuscont cu nume gresit sau fals Magnus Data 24 decembrie 2010 21:48:32
Problema Koba Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <stdio.h>

int t[2010],i,j,a,ok,n,s;

int main()
{
    freopen("koba.in","r",stdin);
    freopen("koba.out","w",stdout);
    scanf("%d%d%d%d",&n,&t[1],&t[2],&t[3]);
    i=3;t[1]%=10;t[2]%=10;t[3]%=10;
    while (!ok&&(i<n))
    {
        ++i;
        t[i]=(t[i-3]+t[i-2]*t[i-1])%10;
        for (j=3;j<=i-1;++j)
            if ((t[j]-t[i]==0)&&(t[j-1]-t[i-1]==0)&&(t[j-2]-t[i-2]==0))
                ok=j;
    }
    if (i==n)
    {
        for (i=1;i<=n;++i) s+=t[i];
        printf("%d",s);
        return 0;
    }
    a=i;
    for (i=1;i<=ok;++i) s+=t[i];
    for (i=ok+1;i<=a;++i) s+=((n-ok)/(a-ok))*t[i];
    n=(n-ok)%(a-ok);
    for (i=ok+1;i<=n+ok;++i)
    {
        s+=t[i];
    }
    printf("%d",s);
    return 0;
}