Pagini recente » Cod sursa (job #1261255) | Cod sursa (job #2632339) | Cod sursa (job #2556164) | Cod sursa (job #1663082) | Cod sursa (job #11927)
Cod sursa(job #11927)
#include<fstream.h>
unsigned long p;
void cont(unsigned long jum,unsigned long &c)
{unsigned long p;
for(p=5;p<=jum;p=p*5)
c=c+jum/p;
}
unsigned long caut(unsigned long li,unsigned long ls)
{unsigned long c;
unsigned long jum;
while(li<ls)
{jum=(li+ls)/2;
c=0;cont(jum,c);
if(c==p) return (jum-jum%5);
else if(c<p) li=jum;
else ls=jum;
}
return 0;
}
int main()
{ifstream f("fact.in");
ofstream g("fact.out");
unsigned long a,b,rez;
f>>p;f.close();
a=0;b=4200000000;
rez=caut(a,b);
if(!rez) {g<<-1<<'\n';g.close();}
else {g<<rez<<'\n';g.close();}
return 0;
}