Pagini recente » Cod sursa (job #1286798) | Cod sursa (job #2899250) | Cod sursa (job #2813425) | Cod sursa (job #355878) | Cod sursa (job #726792)
Cod sursa(job #726792)
#include <fstream>
#include <iostream>
#include <cmath>
using namespace std;
int p;
int nr_zero(int x)
{
int i;
long long nr=0;
for (i=1; i<=10000; i++)
if (x/(int)pow((double)5,i)==0) break;
else nr+=x/(int)pow((double)5,i);
return nr;
}
int main()
{
ifstream f("fact.in");
f>>p;
f.close();
int l=1,r=p*5,x;
ofstream g("fact.out");
while (l<=r) {
x=nr_zero((l+r)/2);
if (x==p) { g<<(l+r)/2-(l+r)/2%5; return 0; }
else if (x<p) l=(l+r)/2+1;
else r=(l+r)/2-1;
}
if (p==0) g<<1;
else g<<-1;
g.close();
return 0;
}