Cod sursa(job #2091314)

Utilizator CrystyAngelDinu Cristian CrystyAngel Data 19 decembrie 2017 15:46:36
Problema Koba Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream fin("koba.in");
ofstream fout("koba.out");

int f;
int v[1000];

inline int found_it(int a,int b,int c)
{
    if(f == a*100+b*10+c)
        return true;
    return false;
}

int main()
{
    int a,b,c,n,i;
    fin>>n>>a>>b>>c;
    a%=10;
    b%=10;
    c%=10;
    f = a*10*+b*10+c;
    v[1]=a,v[2]=b,v[3]=c;
    int ans = a+b+c;
    int rec;
    for(i=4; i<=n; ++i)
    {
        v[i]=v[i-1]+v[i-2]*v[i-3];
        v[i]%=10;
        ans+=v[i];
        if(found_it(v[i-2],v[i-1],v[i]))
            rec = i-3;
    }
    if(rec!=0)
    {
        ans = n/rec *  (ans-a-b-c);
        n%=rec;
        i = 1;
        while(n--)
        {
            ans+=v[i++];
        }
    }
    fout<<ans;
}