Cod sursa(job #1470639)
Utilizator | Data | 11 august 2015 19:16:53 | |
---|---|---|---|
Problema | Factorial | Scor | 100 |
Compilator | c | Status | done |
Runda | Arhiva de probleme | Marime | 0.32 kb |
#include<stdio.h>
int p,i,j,t,s,k,l;
int main() {
freopen("fact.in","r",stdin),freopen("fact.out","w",stdout),scanf("%d",&p);
for(s=1<<27;s;s>>=1)
if(s+i<=100000000) {
for(j=5*(i+s),t=0,k=5;k<=j;k*=5)
t=t+j/k;
if(t<=p)
i+=s,l=t;
}
printf("%d",!p?1:(l==p?5*i:-1));
}