Cod sursa(job #1424949)

Utilizator alexandrainfoAlexandra Florea alexandrainfo Data 25 aprilie 2015 23:09:47
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include <cstdio>
using namespace std;
FILE *f, *g;
int n,j,m,sol,k,nr,i,puteri[16];
int main()
{f=fopen ("fact.in","r");
g=fopen ("fact.out","w");
fscanf (f,"%d",&n);
puteri[1]=5;
puteri[0]=1;
for (i=2;i<=13;++i)
puteri[i]=puteri[i-1]*5;
i=1;
j=500000000;
while (i<j)
{m=(i+j)/2;
nr=0;
for (k=1;k<=13;++k)
nr=nr+(m/puteri[k]);
if (nr<n)
i=m+1;
else
j=m;
}
for (k=1;k<=13;++k)
sol=sol+(i/puteri[k]);
if (sol==n)
fprintf (g,"%d\n",i);
else
fprintf (g,"-1\n");
return 0;
}