Cod sursa(job #811303)

Utilizator cldmeClaudiu Ion cldme Data 11 noiembrie 2012 21:19:56
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.45 kb
#include<stdio.h>

int zero(int n)
{
	int s=0,p=5;
	while(n>=p)
	{
		s+=n/p;
		n/=p;
	}
	return s;
}

long long caut(int p)
{
	long long i,pas=1<<30;
	for(i=0;pas!=0;pas/=2) // pas>>=1;
		if(zero(i+pas)<p)
			i+=pas;
	return i+1;
}

int main()
{
	int p;
	long long n;
	freopen("fact.in","r",stdin);
	freopen("fact.out","w",stdout);
	scanf("%d",&p);
	n=caut(p);
	if(zero(n)==p)
		printf("%d",n);
	else printf("-1");
	return 0;
}