Pagini recente » Cod sursa (job #675605) | Cod sursa (job #2426011) | Cod sursa (job #1261412) | Cod sursa (job #1262522) | Cod sursa (job #650364)
Cod sursa(job #650364)
#include<fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
unsigned int nr0;
unsigned int fact(unsigned int x)
{
unsigned int nr=0,cp=5;
while(x>=cp)
{
nr+=x/cp;
cp*=5;
}
return nr;
}
int caut(unsigned int p,unsigned int u)
{
unsigned int mij,f;
if(p<=u)
{
mij=(p+u)/2;
f=fact(mij);
if(f==nr0)
if(mij%10<5)
return (mij/10*10);
else return (mij/10*10+5);
else
if(nr0<f)
return caut(p,mij-1);
else return caut(mij+1,u);
}
else return -1;
}
int main()
{
f>>nr0;
if(nr0>0)
g<<caut(0,2000000000)<<'\n';
else
if(nr0==0)
g<<1;
else g<<-1;
f.close();
g.close();
return 0;
}