Cod sursa(job #137789)

Utilizator razvi9Jurca Razvan razvi9 Data 17 februarie 2008 14:48:32
Problema Koba Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<fstream>
using namespace std;
long long n,poz[1000],a,b,c,i,j,sum[10000],s;
int main()
{
	ifstream f("koba.in");
	ofstream g("koba.out");
	f>>n>>a>>b>>c;
	a%=10;b%=10;c%=10;
	poz[a*100+b*10+c]=3;
	sum[1]=a;
	sum[2]=a+b;
	sum[3]=a+b+c;
	for(i=4;i<=n;i++){
		j=(c+a*b)%10;
		a=b;b=c;c=j;
		sum[i]=sum[i-1]+c;
		if(poz[a*100+b*10+c]) break;
		else poz[a*100+b*10+c]=i;}
	if(i>n) g<<sum[n];
	else{
		j=poz[a*100+b*10+c];
		s=sum[j];
		s+=(sum[i]-sum[j])*((n-j)/(i-j));
		s+=sum[j+(n-j)%(i-j)]-sum[j];
		g<<s;}
	g<<endl;
	g.close();
}