Pagini recente » Cod sursa (job #1048035) | Cod sursa (job #2229421) | Cod sursa (job #1920111) | Cod sursa (job #678689) | Cod sursa (job #1583246)
#include <stdio.h>
#include <climits>
using namespace std;
FILE *f,*g;
int main()
{
f=fopen("fact.in","r");
g=fopen("fact.out","w");
int p,ls,ld,mij,n,nr5,rez;
fscanf(f,"%d",&p);
ls=1;
ld=INT_MAX;
if(p==0)
fprintf(g,"%d",1);
else
{
while(ls<=ld)
{
mij=(ls+ld)/2;
rez=0;
nr5=5;
while(nr5<=mij)
{
rez+=mij/nr5;
nr5*=5;
}
if(rez<p)
{
ls=mij+1;
}
else if(rez>p)
{
ld=mij-1;
}
else
{
n=mij;
n-=n%5;
break;
}
}
if(ls>ld)
{
fprintf(g,"%d",-1);
}
else
fprintf(g,"%d",n);
}
fclose(f);
fclose(g);
return 0;
}