Cod sursa(job #196831)

Utilizator devilkindSavin Tiberiu devilkind Data 29 iunie 2008 15:29:14
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.41 kb
#include <stdio.h>

long int st,dr,mid,n;

long int f(long int x)
{
	long int p,ret=0;

	for (p=5;p<=x;p*=5)
		ret+=x/p;

	return ret;
}

int main()
{
	freopen("fact.in","r",stdin);
	freopen("fact.out","w",stdout);

	scanf("%ld",&n);

	st=1;dr=1 << 30;

	while (st<dr-1)
		{
			mid=(st+dr)/2;

			if (f(mid)<n) st=mid;
				else dr=mid;
		}
	if ( f(st)==n ) printf("%ld ",st);
		else printf("%ld ",dr);
	return 0;
}