1var totalSteps = function (nums) {2let stack = [],3dp = new Array(nums.length).fill(0),4max = 0;56for (let i = nums.length - 1; i >= 0; i--) {7while (stack.length > 0 && nums[i] > nums[stack[stack.length - 1]]) {8dp[i] = Math.max(++dp[i], dp[stack.pop()]);9max = Math.max(dp[i], max);10}11stack.push(i);12}13return max;14};