Cod sursa(job #365463)

Utilizator ProcopliucProcopliuc Adrian Procopliuc Data 18 noiembrie 2009 20:28:10
Problema Koba Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
# include <stdio.h>
int n,s,t1,t2,t3,i,x,a[2000],poz[2000],nr,nri,li,sum,u,p,j;
int main ()
{
freopen ("koba.in","r",stdin);
freopen ("koba.out","w",stdout);
scanf ("%i%i%i%i",&n,&t1,&t2,&t3);
t1=t1%10;
t2=t2%10;
t3=t3%10;

s=t1+t2+t3;
nr=t1*100+t2*10+t3;
a[nr]=s;
poz[nr]=3;
  nr=1;

  for (i=4;i<=n;i++)
  {
   x=t3+t2*t1;
   x=x%10;
   t1=t2;
   t2=t3;
   t3=x;


   t3=t3%10;
   s=s+t3;


   nr=t1*100+t2*10+t3;
   if (a[nr]!=0)
   break;
   else
   {
   a[nr]=s;
    poz[nr]=i;
    }

   }
   sum=s;
   u=i;
   p=poz[nr];
   li=u-p;
   n=n-u;
   nri=n/li;
   s=s-a[nr];
   sum=sum+nri*s;

   i=nri*li;
   i++;
   t3=nr%10;
   nr=nr/10;
   t2=nr%10;
   nr=nr/10;
   t1=nr;

   for (j=i;j<=n;j++)
  {
   x=t3+t2*t1;
   x=x%10;
   t1=t2;
   t2=t3;
   t3=x;


   t3=t3%10;
   sum=sum+t3;

   }
   printf ("%i",sum);
   return 0;
   }