Pagini recente » Cod sursa (job #2763057) | Cod sursa (job #2851801) | Cod sursa (job #927537) | Cod sursa (job #1613886) | Cod sursa (job #807370)
Cod sursa(job #807370)
#include<stdio.h>
long int P,m1,m2,mij,gasit=0;
char a[500000020];
FILE*A,*B;
long int cf(long int A)
{
long int B=A,C=0,nr=0;
while(B>0)
{
nr=nr+B/5;
B=B/5;
}
return nr;
}
int main()
{
A=fopen("fact.in","r");
B=fopen("fact.out","w");
fscanf(A,"%ld",&P);
m1=1;m2=9*P;mij=(m1+m2)/2;
while(gasit==0)
{
if(cf(mij)==P){gasit=1;fprintf(B,"%ld",mij-mij%5);}
else
{
if(cf(mij)<P){m2=mij;mij=(m1+m2)/2-1;}
else{m1=mij;mij=(m1+m2)/2+1;}
if( m1+1==m2){gasit=1;fprintf(B,"-1");}
}
}
fclose(A);fclose(B);
}