Pagini recente » Cod sursa (job #1499713) | Cod sursa (job #716120) | Cod sursa (job #94934) | Cod sursa (job #121928) | Cod sursa (job #397407)
Cod sursa(job #397407)
#include<stdio.h>
using namespace std;
#define Mx 4200000000
#include<stdlib.h>
unsigned long p,x,a,b,c,i,ok,n;
FILE *f=fopen("fact.in","r"), *g=fopen("fact.out","w");
void desc()
{
for(i=5;i<=c;i*=5)
x+=c/i;
}
void caut_bin(unsigned long a,unsigned long b)
{ x=0;
if(a>b)
if(!ok)
{fprintf(g,"-1\n"); fclose(f); fclose(g); exit(0);}
else return;
c=(a+b)/2;
desc();
if(x==p)
{
n=c;
ok=1;
}
if(x<p) caut_bin(c+1,b);
else if(x>=p) caut_bin(a,c-1);
}
int main()
{
fscanf(f,"%lu",&p);
if(p==0)
fprintf(g,"1\n");
else
{
caut_bin(0,Mx);
fprintf(g,"%lu\n",n);
}
fclose(f);
fclose(g);
return 0;
}