Pagini recente » Cod sursa (job #207913) | Cod sursa (job #1860149) | Istoria paginii runda/o_gandim_intens | Istoria paginii utilizator/ilincap | Cod sursa (job #2710014)
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int v[10000000];
bool zero(int a,int p)
{
int cnt=0;
for(int i=5; i<=a; i*=5)
{
cnt+=a/i;
}
if(cnt>=p)
return 1;
else
return 0;
}
int bs(int st, int dr, int a)
{
int med;
while(dr-st>1)
{
med = (st+dr)/2;
if(zero(med,a)!=zero(med-1,a))
return med;
if(zero(med,a))
dr = med;
else
st = med;
}
if(zero(dr,a)!=zero(dr-1,a))
return dr;
if(zero(st,a)!=zero(st-1,a))
return st;
if(a==0)
return 1;
return -1;
}
int p;
int main()
{
fin>>p;
fout<<bs(0,p*5,p);
return 0;
}