Cod sursa(job #2158628)

Utilizator MihneaGhiraMihnea MihneaGhira Data 10 martie 2018 14:36:46
Problema Koba Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include<fstream>
using namespace std;
ifstream fin("koba.in");
ofstream fout("koba.out");
int n,t1,t2,t3,p,s,k,x;
int a[11][11][11];
int sum[1010];
int main(){
    fin>>n>>t1>>t2>>t3;
    p=s=0;
    t1%=10;
    t2%=10;
    t3%=10;
    sum[k++]=0;
    sum[k++]=t1;
    sum[k++]=t1+t2;
    sum[k]=t1+t2+t3;
    for(int i=4;i<=n;i++){
        x=(t1*t2+t3)%10;
        sum[i]=x+sum[i-1];
        t1=t2;
        t2=t3;
        t3=x;
        if(a[t1][t2][t3]){
            s=i-a[t1][t2][t3];
            p=a[t1][t2][t3];
            break;
        }
        else{
            a[t1][t2][t3]=i;
        }
    }
    if(s)
        fout<<sum[p]+(sum[p+s]-sum[p])*((n-p)/s)+sum[p+(n-p)%s]-sum[p];
    else
        fout<<sum[n];
    return 0;
}