Pagini recente » Cod sursa (job #1349095) | Cod sursa (job #1339716) | Cod sursa (job #1363124) | Cod sursa (job #1371452) | Cod sursa (job #2481669)
#include <fstream>
#include <iostream>
using namespace std;
int a,b;
int zeroez(int k)
{
int z=0;
while (k!=0)
{
z=z+k/5;
k=k/5;
}
return z;
}
int solve (int p)
{
int st=0,dr=5*p,mid,solmid;
while (st<=dr)
{
mid=(st+dr)/2;
solmid=zeroez(mid);
if (solmid<p) st= mid + 1;
else if (solmid>p) dr= mid - 1;
else if (solmid==p)
return mid;
}
return -1;
}
int main()
{
ifstream f ("fact.in");
ofstream g ("fact.out");
f>>a;
if (a==0) g<<1;
else {
b=solve(a);
if (b==-1) g<<-1;
else g<<b-b%5;
}
}