Pagini recente » Cod sursa (job #753872) | Cod sursa (job #1164797) | Cod sursa (job #383421) | Cod sursa (job #2130287) | Cod sursa (job #807381)
Cod sursa(job #807381)
#include<stdio.h>
long int P,m1,m2,mij,gasit=0,z;
FILE*A,*B;
long int cf(long int A)
{
long int B=A,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&&m1<m2)
{
z=cf(mij);
if(z==P){gasit=1;fprintf(B,"%ld",mij-(mij%5));}
else
{
if(z<P){m2=mij;mij=(m1+m2)/2-1;}
else{m1=mij;mij=(m1+m2)/2+1;}
}
}
if(gasit==0)fprintf(B,"-1");
fclose(A);fclose(B);
}