Cod sursa(job #780932)

Utilizator alex_unixPetenchea Alexandru alex_unix Data 22 august 2012 22:01:18
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <cstdio>

inline unsigned int zeros (unsigned int x)
{
	unsigned int result(0);
	while (x >= 5)
		result += x/= 5;
	return result;
}

int main (void)
{
	std::freopen("fact.in","r",stdin);
	std::freopen("fact.out","w",stdout);
	unsigned int n;
	std::scanf("%u",&n);
	std::fclose(stdin);
	unsigned int left(0), right(5 * n), middle;
	while (left < right);
	{
		middle = (left + right) >> 1;
		if (n > zeros(middle))
			left = middle + 1;
		else
			right = middle;
	}
	if (zeros(left) == n)
		std::printf("%u",left);
	else
		std::printf("-1");
	std::putchar('\n');
	std::fclose(stdout);
	return 0;
}