Pagini recente » Cod sursa (job #586107) | Cod sursa (job #2554289) | Cod sursa (job #2327823) | Cod sursa (job #1989578) | Cod sursa (job #1043710)
#include <fstream>
using namespace std;
ifstream fin ("fact.in");
ofstream fout ("fact.out");
int cb(int ,int ,int );
int nz(int x);
int main()
{
int n,p,x;
fin>>p;
if(p==0)
{
fout<<1;
return 0;
}
n=2147483647;
x=cb(0,n,p);
if(x==-1) fout<<x;
else
{
x-=x%5;
fout<<x;
}
return 0;
}
int cb(int li,int ls,int p)
{
if(li==ls) return -1;
int m=(li+ls)/2,t=nz(m);
if(t<p) return cb(m+1,ls,p);
if(t>p) return cb(li,m-1,p);
return m;
}
int nz(int x)
{
int i,r;
for(i=5,r=0; i<=x; i*=5)
r+=x/i;
return r;
}