Pagini recente » Cod sursa (job #1297537) | Cod sursa (job #241846) | Cod sursa (job #785550) | Cod sursa (job #121231) | Cod sursa (job #2337543)
#include <fstream>
using namespace std;
ifstream in ("fact.in");
ofstream out ("fact.out");
int nr0(long long a)
{
long long powe=5,cnt=0;
while (powe<=a)
{
cnt=cnt+a/powe;
powe=powe*5;
}
return cnt;
}
long long ctbin (long long val)
{
long long pos=0;
for (long long msk=1<<30;msk>0;msk/=2)
{
if (nr0(pos+msk)<=val)
pos=pos+msk;
}
if (nr0(pos)!=val)
return -1;
else
{
while (nr0(pos)==val)
pos--;
return pos+1;
}
}
int main()
{
long long n;
in>>n;
if (n==0)
out<<1;
else
out<<ctbin(n);
return 0;
}