Clumsy Factorial LeetCode solution in JavaScript
1var clumsy = function (N) {2let s = [N];3let op = "*";4for (let i = N - 1; i > 0; i--) {5n = s.length;6switch (op) {7case "*":8s[n - 1] *= i;9op = "/";10break;11case "/":12s[n - 1] =13s[n - 1] < 014? -Math.floor(Math.abs(s[n - 1]) / i)15: Math.floor(s[n - 1] / i);16op = "+";17break;18case "+":19s.push(i);20op = "-";21break;22case "-":23s.push(-i);24op = "*";25break;26}27}28// console.log(s)29let ans = s.reduce((a, b) => a + b);30return ans;31};