Pagini recente » Cod sursa (job #2534702) | Cod sursa (job #1213039) | Cod sursa (job #823782) | Cod sursa (job #2166141) | Cod sursa (job #1814473)
#include<stdio.h>
FILE*fin,*fout;
inline int nr_zero(int N)
{
int put=5;
int zero=0;
while(N/put)
{
zero+=N/put;
put*=5;
}
return zero;
}
inline int caut(int st,int dr,int P)
{
while(st<=dr)
{
int mij=(st+dr)/2;
int opt=nr_zero(mij);// ca sa ne fie bine,sa nu ne fie rau
if(opt==P)
{
return mij-mij%5;
}
if(opt<P)
{
st=mij+1;
}
if(opt>P)
{
dr=mij;
}
}
return -1;
}
int main()
{
fin=fopen("fact.in","r");
fout=fopen("fact.out","w");
int P;
fscanf(fin,"%d",&P);
if(P==0)
{
fprintf(fout,"1");
}
fprintf(fout,"%d",caut(4*P/5,5*P,P));
fclose(fin);
fclose(fout);
return 0;
}