Cod sursa(job #110794)
Utilizator | Data | 27 noiembrie 2007 19:58:09 | |
---|---|---|---|
Problema | Factorial | Scor | 15 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.48 kb |
#include<stdio.h>
int main()
{
long double p,sol,cinci=25,t;
FILE *f=fopen("fact.in","r");
fscanf(f,"%Lf",&p);
fclose(f);
if(p==0)
{
sol=0;
f=fopen("fact.out","w");
fprintf(f,"1");
fclose(f);
return 0;
}
sol=p*5;
int h=2,k;
for(cinci=25;cinci<=sol;cinci*=5,h++)
{
// if(cinci<sol)
k=2;
for(t=cinci*2;t<sol;t+=cinci,k++)
if(k%5!=0) h++;
}
sol-=5*(h-2);
f=fopen("fact.out","w");
fprintf(f,"%.0Lf\n",sol);
fclose(f);
return 0;
}