Cod sursa(job #2293300)
Utilizator | Data | 30 noiembrie 2018 19:35:24 | |
---|---|---|---|
Problema | Factorial | Scor | 100 |
Compilator | c-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.39 kb |
#include <stdio.h>
int zero(int a){
int n = 0;
while(a>=5){
n+=(a/=5);
}
return n;
}
int main(){
freopen("fact.in", "r", stdin);
freopen("fact.out", "w", stdout);
int n, i, pas = (1 << 30), r = 0;
scanf("%d", &n);
while(pas!=0){
if(zero(pas+r) < n)
r+=pas;
pas/=2;
}
if(zero(r+1+pas)!= n)
printf("-1");
else
printf("%d", r + 1);
}