Cod sursa(job #482290)
| Utilizator | Data | 2 septembrie 2010 23:19:25 | |
|---|---|---|---|
| Problema | Factorial | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.43 kb |
#include<stdio.h>
int n, aux=5, nr, start=1, end=1000000000, mid;
int p;
int calc(int x)
{
aux=5;
nr=0;
while(x/aux>0)
{
nr+=x/aux;
aux*=5;
}
return nr;
}
int main()
{
freopen("factorial.in", "r", stdin);
freopen("factorial.out", "w", stdout);
scanf("%d", &p);
while(start<end)
{
mid=(start+end)/2;
if(calc(mid)>=p)
end=mid;
else start=mid+1;
}
printf("%d", start/5*5);
return 0;
}