Cod sursa(job #1741487)

Utilizator ionanghelinaIonut Anghelina ionanghelina Data 14 august 2016 00:56:05
Problema Koba Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.1 kb
#include<bits/stdc++.h>
using namespace std;
int n,t1,t2,t3;
int x1,x2,x3,x4,poz,r,r1;
int s=0;
int main()
{
    freopen("koba.in","r",stdin);
    freopen("koba.out","w",stdout);
    scanf("%d%d%d%d",&n,&t1,&t2,&t3);
   // printf("%d %d %d ",t1%10,t2%10,t3%10);
    x1=t1%10;
    x2=t2%10;
    x3=t3%10;
    if (n==1)
    {
        printf("%d\n",x1);
        return 0;
    }
    if (n==2)
    {
        printf("%d\n",x1+x2);
        return 0;
    }
    if (n==3)
    {
        printf("%d\n",x1+x2+x3);
        return 0;
    }
    s=x1+x2+x3;
    //poz=n+3;
    for(int i=4;i<=n;i++)
    {
        x4=(x3+x2*x1)%10;
        x1=x2;
        x2=x3;
        x3=x4;
        s+=x4;
        if (x1==(t1%10) && x2==(t2%10) && x3==(t3%10))
        {
            poz=i;
            break;
        }
    }
    if (poz)
    {
    poz-=3;
    s-=x1;
    s-=x2;
    s-=x3;
    r=n/poz;
    s=s*r;
    r1=n%poz;
    for(int i=1;i<=r1;i++)
    {
         x4=(x3+x2*x1)%10;
        x1=x2;
        x2=x3;
        x3=x4;
        s+=x4;
    }
    }
    printf("%d\n",s);
    return 0;
}