Cod sursa(job #2562090)

Utilizator mihaistamatescuMihai Stamatescu mihaistamatescu Data 29 februarie 2020 12:09:16
Problema Koba Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <fstream>
using namespace std;
int n,t1,t2,t3,i,nr,aux,s[1010],f[1010];
int main (){
    ifstream fin ("koba.in");
    ofstream fout("koba.out");
    fin>>n>>t1>>t2>>t3;
    t1=t1%10;
    t2=t2%10;
    t3=t3%10;
    s[1]=t1;
    s[2]=t1+t2;
    s[3]=t1+t2+t3;
    f[t1*100+t2*10+t3]=3;
    for(i=4;i<=n;i++){
        nr=(t1*t2+t3)%10;
        t1=t2;
        t2=t3;
        t3=nr;
        s[i]=s[i-1]+t3;
        if(f[t1*100+t2*10+t3]!=0){
            break;
        }
        else{
            f[t1*100+t2*10+t3]=i;
        }
    }
    i--;
    if(i>=n){
        fout<<s[n];
    }
    else{
        aux=f[t1*100+t2*10+t3];
        fout<<s[aux-1]+((n-aux+1)/(i-aux+1))*(s[i]-s[aux-1])+s[aux-1+(n-aux+1)%(i-aux+1)]-s[aux-1];
    }
    return 0;
}