Pagini recente » Cod sursa (job #576433) | Cod sursa (job #245124) | Cod sursa (job #1947759) | Cod sursa (job #2956924) | Cod sursa (job #2064804)
#include <fstream>
#define Nmax 100000000000
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int p;
int Verif(long long x)
{
long long k=5;
int s=0;
while(k<=x)
{
s=s+x/k;
k=k*5;
}
return s;
}
long long CautareBinara(long long s,long long d,int p)
{
if(s<d)
{
long long m=s+(d-s)/2;
int val=Verif(m);
if(val==p) return m;
else if(val<m)return CautareBinara(s,m-1,p);
else return CautareBinara(m+1,d,p);
}
return -1;
}
int main()
{
fin>>p;
long long val=CautareBinara(1,Nmax,p);
while(val-1>0&&Verif(val-1)==p)--val;
fout<<val;
return 0;
}