Cod sursa(job #357539)

Utilizator mirunababliucMiruna Babliuc mirunababliuc Data 19 octombrie 2009 19:15:15
Problema Factorial Scor 100
Compilator cpp Status done
Runda CNRV #3 Marime 0.51 kb
#include <fstream.h>
int main ()
{ int k,p,ok,s;
long long x,st,dr,mij;
ifstream f("fact.in");
ofstream g("fact.out");
f>>p;
if(p==0) g<<1<<"\n";
else { x=p*5;
	   st=1;
       dr=x;
	   ok=0;
	   while(st<=dr && ok==0)
		   { mij=(st+dr)/2;
			 k=5;
			 s=0;
			 while(k<=mij)
				 { s+=mij/k;
	               k*=5;}
			 if (p==s) { ok=1; x=mij;}
			 else if (p<=s) dr=mij-1;
			      else st=mij+1;
		   }
		if(ok) g<<x-x%5<<"\n";
		else g<<-1<<"\n";
	}
f.close();
g.close();
return 0;
}