Pagini recente » Cod sursa (job #3256602) | Cod sursa (job #2328878) | Cod sursa (job #2270245) | Cod sursa (job #2530600) | Cod sursa (job #116176)
Cod sursa(job #116176)
#include<stdio.h>
int main()
{
FILE *fin,*fout;
fin= fopen ("fact.in","r");
fout= fopen ("fact.out","w");
long int p,n=0,c=1,m,c2=0,c5=0;
fscanf(fin,"%D",&p);
/*while (p/5)
{
n+=25;
p=p-4;
m=n;
while (m%5==0)
{
if (m%5==0) p--;
m/=5;
if (p==0&&m%5==0) c=0;
if (!c) break;
}
if (!c) break;
}*/
if (c)
while (p)
{
n++;
m=n;
while (m%5==0)
{
if (m%5==0)
{
p--;
c5++;
}
m/=5;
if (p==0&&m%5==0) c=0;
if (!c) break;
}
m=n;
while (m%2==0)
{
if (m%2==0) c2++;
m/=2;
}
if (!c) break;
}
while (c&&c2<c5)
{
n++;
if (n%5==0) c=0;
m=n;
while (m%2==0)
{
if (m%2==0) c2++;
m/=2;
}
}
long inv=0;
if (!c) fprintf (fout,"%d",-1);
else
{
while (n)
{
inv=inv*10+n%10;
n/=10;
}
while (inv)
{
fprintf (fout,"%d",int(inv%10));
inv/=10;
}
}
return 0;
}