Pagini recente » Cod sursa (job #1046370) | Cod sursa (job #3157311) | Cod sursa (job #1876308) | Cod sursa (job #1746410) | Cod sursa (job #1667373)
#include <iostream>
#include <fstream>
#include<climits>
using namespace std;
ifstream in ("fact.in");
ofstream out ("fact.out");
long p;
long mij,li=0,ls=LONG_MAX;
long int verificare(long int n)
{
long nr_zero;
nr_zero=0;
while(n/5)
{
nr_zero+=n/5;
n/=5;
}
return nr_zero;
}
int main()
{
bool gasit;
in>>p;
while((li<=ls)&&(!gasit))
{
mij=(li+ls)/2;
if(verificare(mij)==p&&verificare(mij-1)<p||mij<5)
{
if (mij<5)
out<< -1;
else
out<<-1;
gasit=1;
}
else
if(verificare(mij)<p)
li=mij+1;
else ls=mij-1;
}
return 0;
}