Pagini recente » Cod sursa (job #1229956) | Cod sursa (job #1063946) | Cod sursa (job #1571773) | Cod sursa (job #3277249) | Cod sursa (job #1925562)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("fact.in"); ofstream g("fact.out");
int n,p,m,st,dr; int a[15];
int nr0(int y)
{
int i,x;
x=0;
for(i=1;i<=14;i++) x+=y/a[i];
return x;
}
int main()
{
f>>p;
a[1]=5;
for(n=2;n<=14;n++)
{
a[n]=a[n-1]*5;
}
m=-1;
st=1;
dr=2000000000;
while(st<=dr)
{
int x;
n=(st+dr)/2;
x=nr0(n);
if (x==p)
{
if (m>n || m==-1) {m=n; dr=n-1;}
else break;
}
if (x<p)
{
st=n+1;
}
if (x>p)
{
dr=n-1;
}
}
n=m;
g<<n;
return 0;
}