Pagini recente » Cod sursa (job #1481873) | Cod sursa (job #306377) | Cod sursa (job #1483291) | Cod sursa (job #1139186) | Cod sursa (job #2345727)
#include <iostream>
#include <fstream>
#include <climits>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
long long cautbin(int n)
{
long long p=1,u=LLONG_MAX;
while(p<=u)
{
int m=(p+u)/2;
int nr0=m/5+m/25+m/125+m/625+m/3125+m/15625+m/78125+m/390625+m/1953125+m/9765625+m/48828125+m/244140625;
if(n>nr0)p=m+1;
else if(n<nr0)u=m-1;
else return m;
}
return -1;
}
long cautarebinara(int n)
{
long p=1, u=400000000;int m;
while(p <= u)
{
m = (p + u) / 2;
int nr0=m/5+m/25+m/125+m/625+m/3125+m/15625+m/78125+m/390625+m/1953125+m/9765625+m/48828125+m/244140625;
if(nr0==n)
{
while(m%5!=0)m--;
return m;}
if(nr0<n)
p = m + 1;
else
u = m - 1;
}
return -1;
}
int main()
{
cout<<cautarebinara(12);
return 0;
}