Cod sursa(job #329065)

Utilizator prdianaProdan Diana prdiana Data 4 iulie 2009 16:22:26
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <stdio.h>

int n;

int nrz(int nr)
{
	int j = 0;
	while (nr != 0)
	{
		j+=nr /5;
		nr/=5;
	}
	return j;
}

int binar(int ls, int ld)
{
	if (ls<=ld)
	{
		int d = (ls+ld)/2;
		int e = nrz(d - d % 5);
		if ( e == n)
		{
			return d - d % 5;
		}
		if (e > n)
		{
			binar(ls,d-1);
		}
		else
		{
			binar(d+1,ld);
		}
	}
	else
	{
		return -1;
	}
}

int main()
{
	freopen("fact.in","r",stdin);
	freopen("fact.out","w",stdout);
	scanf("%d",&n);
	if ( n == 0)
	{
		printf("1");
	}
	else
	{
		printf("%d", binar(1,n*5));
	}
	return 0;
}