Cod sursa(job #667615)
Utilizator | Data | 23 ianuarie 2012 14:50:21 | |
---|---|---|---|
Problema | Factorial | Scor | 5 |
Compilator | c | Status | done |
Runda | Arhiva de probleme | Marime | 0.46 kb |
#include<stdio.h>
#include<math.h>
int main()
{
freopen("fact.in","r",stdin);
freopen("fact.out","w",stdout);
long s=0,i,p,j=1,v[12];
scanf("%ld", &p);
for(i=0;i<11;++i)
v[i]=(int)pow(5,i+1);
while(s<p)
{
for(i=10;i>=0;--i)
if(j%v[i]==0)
{s=s+i+1;break;}
++j;
}
--j;
if(j==p)
printf("%ld", j);
else printf("%d", -1);
return 0;
}