Pagini recente » Monitorul de evaluare | Cod sursa (job #1503480) | Cod sursa (job #1726786) | Cod sursa (job #2835372) | Cod sursa (job #2799259)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
long long int n;
long long int fct(long long int x)
{
return x/5+x/25+x/126+x/625+x/3125+x/15625+x/78125+x/390625+x/1953125+x/9765625;
}
long long int cautbin2(long long int x)
{
long long int st = 1;
long long int dr = 100000000;
long long int raspuns = -1;
while(st <= dr)
{
long long int mij = (st + dr) / 2;
if(fct(mij) >= x)
{
raspuns = mij;
dr = mij - 1;
}
else
st = mij + 1;
}
return raspuns;
}
int main()
{
in >> n;
out<<cautbin2(n);
}