Pagini recente » Cod sursa (job #25641) | Cod sursa (job #650781) | Cod sursa (job #554618) | Cod sursa (job #446865) | Cod sursa (job #16681)
Cod sursa(job #16681)
#include<fstream.h>
unsigned long p,x,y,rez,k,c,jum;
void cont(unsigned long jum)
{unsigned long i;
for(i=5;i<=jum;i=i*5)
c=c+jum/i;
}
unsigned long caut()
{while(x<y)
{jum=(x+y)/2;
if(k==jum) return 0;
else k=jum;
c=0;
cont(jum);
if(c==p) return (jum-jum%5);
else if(c<p) x=jum;
else y=jum;
}
return 0;
}
int main()
{ifstream f("fact.in");
ofstream g("fact.out");
f>>p;
f.close();
if(!p) {g<<1<<'\n';g.close();return 0;}
y=4200000000;
rez=caut();
if(!rez) {g<<-1<<'\n';g.close();}
else {g<<rez<<'\n';g.close();}
return 0;
}