Cod sursa(job #1649731)

Utilizator edicCiuculescu Eduard edic Data 11 martie 2016 14:51:22
Problema Koba Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<cstdio>
using namespace std;
int ma[11][11][11],v[1001],ms[11][11][11],cv[1001];
int main()
{
  freopen("koba.in","r",stdin);
  freopen("koba.out","w",stdout);
  int n,x,y,z,t,s=0,su=0,i;
  scanf("%d%d%d%d",&n,&x,&y,&z);
  x%=10;
  y%=10;
  z%=10;
  v[1]=x;
  cv[1]=x;
  v[2]=v[1]+y;
  cv[2]=y;
  v[3]=v[2]+z;
  cv[3]=z;
  s=3;
  while(ma[x][y][z]==0)
  {
    t=(z+x*y)%10;
    ma[x][y][z]=y*100+z*10+t;
    s++;
    ms[x][y][z]=s;
    v[s]=v[s-1]+t;
    cv[s]=t;
    x=y;
    y=z;
    z=t;
  }
  su+=v[ms[x][y][z]-4];
  n-=(ms[x][y][z]-4);
  su+=(v[s]-v[ms[x][y][z]-1])*(n/(s-ms[x][y][z]+1));
  n=n%(s-ms[x][y][z]+1);
  su+=v[ms[x][y][z]-4+n]-v[ms[x][y][z]-4];
  printf("%d",su);
  return 0;
}