Pagini recente » Cod sursa (job #1860140) | Cod sursa (job #2023486) | Istoria paginii utilizator/ilie.danila | Cod sursa (job #1036031) | Cod sursa (job #1259966)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f ("fact.in");
ofstream g ("fact.out");
long long n,p,ls,ld;
int nz (int n)
{
int k=n,p=5;
while (p<=n)
{
k+=n/p;
p=p*5;
}
return k;
}
int main()
{
int h;
f>>p;
if (p!=0)
{
ls=1;
ld=1000000000;
int sw=0;
while (ls<=ld&&!sw)
{
h=nz((ls+ld)/2);
if (p>h&&p<nz((ls+ld)/2+1))
{
sw=1;
g<<(ls+ld)/2*5+5;
}
else if (p>h) ls=(ls+ld)/2+1;
else if (p<h) ld=(ls+ld)/2-1;
else
{
g<<((ls+ld)/2)*5;
sw=1;
}
}
}
else g<<1;
return 0;
}