Pagini recente » Cod sursa (job #1646919) | Cod sursa (job #976211) | Cod sursa (job #1324493) | Cod sursa (job #557691) | Cod sursa (job #629107)
Cod sursa(job #629107)
#include <iostream>
#include <fstream>
using namespace std;
long long P;
long long suma(long long nr)
{
long long s=0,x=nr,a=5;
while (x!=0)
{
s+=nr/a;
a*=5;
x=x/5;
}
return s;
}
int main()
{
ifstream fin("fact.in");
ofstream fout("fact.out");
long long M=0,st=1,dr;
fin>>P;
//n=4*P;
dr=5*P;
//M=st+(dr-st)/2;
//fout<<st<<" "<<dr<< " " <<P;
if(P==0)
fout<<1;
else
{
while (st <= dr && suma(M)!=P)
{
M=st+(dr-st)/2;
if(suma(M)>=P)
dr=M-1;
else
st=M+1;
}
//fout<<"M1 "<<M;
while(suma(M)>=P)
{
M--;
}
fout<<M+1;
}
//fout<<suma(45);
return 0;
}