Cod sursa(job #645647)
| Utilizator | Data | 10 decembrie 2011 02:14:19 | |
|---|---|---|---|
| Problema | Factorial | Scor | 90 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.5 kb |
#include<stdio.h>
#include<math.h>
long int nr_zerouri(long int x)
{
int k=0;
long int suma=0,putere;
do
{
k++;
putere=(int)pow(5*1.0,k*1.0);
suma+=x/putere;
}while(x/putere);
return suma;
}
int main()
{
long int i,cerinta,P;
freopen("fact.in","r",stdin);
freopen("fact.out","w",stdout);
scanf("%d",&P);
if(P==0)
printf("1");
else
{
cerinta=P;
P=4*P;
while(P%5!=0)
P++;
for(i=P;i;i+=5)
if(nr_zerouri(i)==cerinta)
{printf("%d",i);break;}
}
return 0;
}