Cod sursa(job #374025)

Utilizator titusuTitus C titusu Data 15 decembrie 2009 18:52:05
Problema Koba Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
using namespace std;
#include <fstream>
#include <iostream>

int main(){
	int N,a,b,c,na,nb,nc,i,s=0;
	freopen("koba.in","r",stdin);
	scanf("%d%d%d%d",&N,&a,&b,&c);
	a %= 10; b %= 10; c %= 10;
	na=a,nb=b,nc=c;
	int gasit=0,d;
	s=a+b+c;
	for( i=4;i<=N && !gasit; ++i){
		d=(nc+nb*na)%10;
		na=nb; nb=nc; nc=d;
		if(na==a && nb==b && nc==c)
			gasit=1;
		s+=d;
	}
	if(gasit){
		cout<<"i="<<i<<endl;
		s-=a+b+c;
		i-=4;
		s *= N/i;
		i=(N/i)*i;
		s+=a+b+c;
		for(i+=4;i<=N;++i){
			d=(nc+nb*na)%10;
			na=nb; nb=nc; nc=d;
			s+=d;
		}
	}
	ofstream fout("koba.out");
	fout<<s;
	return 0;
}