Cod sursa(job #827453)

Utilizator ShardzEnache Andrei Shardz Data 2 decembrie 2012 08:08:21
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>
#include <cmath>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
int p;
int test(int n)
{
	int x,nr=0;
	for(int i=1; i<100; i++)
	{
		x=(int)(n/pow(5,i));
		if(x)
			nr+=x;
		else
		{
			if(nr==p)
				return 1;
			if (nr<p)
				return -1;
			else
				return 0;
		}
	}
}
void binsrc()
{
	int f=4*p, l=5*p,x,mid;
	while(f<1)
	{
		mid=(f+1)/2;
		x=test(mid);
		if(x==1 || x==0)
			l=mid;
		else
			f=mid+1;
	}
	if(test(l)==1)
		out<<1;
	else
		out<<-1;
}
int main()
{
	in>>p;
	if(!p)
		out<<1;
	else
		binsrc();
}