Cod sursa(job #93321)

Utilizator d0d0Hoaghea Teodor-Andrei d0d0 Data 18 octombrie 2007 15:23:57
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.42 kb
#include<stdio.h>
int factorial(int n){
	int p=0;
	while(n>0){
		p+=n/5;
		n/=5;
	}
	return p;
}
int main () {
	freopen("fact.in","r",stdin);
	freopen("fact.out","w",stdout);
	int m,p,a=1,b=500000000;
	scanf("%d",&p);
	while(a!=b){
		m=(a+b)/2;
		if(factorial(m)>=p)
			b=m;
		else
			a=m+1;
	}
	if(factorial(a)==p)
		printf("%d",a);
	else
		printf("-1");
	fclose(stdin);
	fclose(stdout);
	return 0;
}