Cod sursa(job #651971)

Utilizator d.andreiDiaconeasa Andrei d.andrei Data 22 decembrie 2011 16:41:37
Problema Factorial Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <cstdio>

#define file_in "fact.in"
#define file_out "fact.out"

int ret,N,X,left,right,mij;

int count(int X){
	
	int nr=0,p=5;
	int i;
	for (i=2;i<=X;++i){
		int val=i;
		while(val%5==0){
			val/=5;
			nr++;
		}
	}
	return nr;
}

int main(){
	
	freopen(file_in,"r",stdin);
	freopen(file_out,"w",stdout);
	
	scanf("%d", &N);
		
	left=1;
	right=5*N;
	
	while(left<=right){
		
		mij=(left+right)/2;
		X=count(mij);
		if (X<N)
			left=mij+1;
		else
			right=mij-1;
	}
	
	if (count(left)==N)
	    printf("%d\n", left);
	else
		printf("-1\n");
	
	return 0;
	
}