Cod sursa(job #2559915)

Utilizator mariusn01Marius Nicoli mariusn01 Data 27 februarie 2020 18:17:44
Problema Koba Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.09 kb
#include <fstream>
using namespace std;
int c[1001];
int v[2001];
int n,t1,t2,t3,t,i,j,_next,last,sp,sc,st,ok,pic,rest;

int main()
{

    ifstream fin("koba.in");
    fin>>n>>t1>>t2>>t3;

    c[1]=t1%10;
    c[2]=t2%10;
    c[3]=((1*10+t1%10)*10+t2%10)*10+t3%10;
    t1=t1%10;
    t2=t2%10;
    t3=t3%10;

    v[c[3]]=1;

    for (i=4; i<=1001; i++){
        last = c[i-1];
        t = (t3+t2*t1)%10;
        _next =(1*100+last%100)*10+t;
        if (v[_next]==1){
            break;
        }
        c[i]=_next;
        v[_next]=1;
        t1=t2;
        t2=t3;
        t3=t;
    }
    i=i-1;

    sp = 0;
    ok=0;
    sc = 0;
    for (j=1; j<=i; j++){
        if (c[j]==_next){
            ok=1;
            pic = j;
        }
        if (ok==1){
            sc=sc+c[j]%10;
        }
        else{
            sp=sp+c[j]%10;
        }
    }

    st = sp;
    n = n-(pic-1);
    rest = n%(j-pic);
    st=st+(n/(j-pic))*sc;

    for (i=0; i<rest; i++)
        st = st + (c[pic+i]%10);
    ofstream fout("koba.out");
    fout<<st;
    return 0;
}