Cod sursa(job #1625755)
Utilizator | Gagea Eusebiu-Andrei eusebiu_gagea | Data | 2 martie 2016 20:29:23 |
---|---|---|---|
Problema | Factorial | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.59 kb |
#include <fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int k;
int nr_0(int x)
{
int p=5,nr=0;
while(p<=x)
{
nr+=x/p;
p*=5;
}
return nr;
}
int caut_bin(int st, int dr)
{
int mij,val=-1;
while(st<=dr)
{
mij=(st+dr)>>1;
if(nr_0(mij)>=k)
{
val=mij;
dr=mij-1;
}
else
st=mij+1;
}
if(nr_0(val)==k)
return val;
return -1;
}
int main()
{
f>>k;
g<<caut_bin(1, (1<<29));
return 0;
}