Cod sursa(job #977255)

Utilizator TibixbAndrei Tiberiu Tibixb Data 25 iulie 2013 11:54:21
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include<fstream>
using namespace std;
int n, a2, aux, mij, p, u, sum;
int main(){
	ifstream fin("fact.in");
	ofstream fout("fact.out");
	fin>>n;
	p=1; u=5*n;
	while(p<=u){
		mij=p+(u-p)/2;
		aux=mij;
		a2=5;
		sum=0;
		while(aux>=a2){
			sum+=aux/a2;
			a2*=5;
		}
		if(sum>=n){
			u=mij-1;
		}
		else
			p=mij+1;
	}
	aux=n;
	a2=5;
	sum=0;
	while(aux>=a2){
		sum+=aux/a2;
		a2*=5;
	}
	if(sum!=n)
		fout<<"-1";
	else
		fout<<p<<"\n";
	return 0;
}