We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent cd66066 commit 29d9d8cCopy full SHA for 29d9d8c
2289-steps-to-make-array-non-decreasing.js
@@ -15,3 +15,28 @@ var totalSteps = function(nums) {
15
}
16
return res
17
};
18
+
19
+// another
20
21
+/**
22
+ * @param {number[]} nums
23
+ * @return {number}
24
+ */
25
+const totalSteps = function(nums) {
26
+ let res = 0, stk = []
27
+ stk.push([nums[0], 0])
28
+ for(let i = 1, n = nums.length; i < n; i++) {
29
+ let steps = 0
30
+ while(stk.length && stk[stk.length - 1][0] <= nums[i]) {
31
+ const peek = stk.pop()
32
+ steps = Math.max(steps, peek[1])
33
+ }
34
+ if(stk.length === 0) steps = 0
35
+ else steps++
36
37
+ res = Math.max(res, steps)
38
+ stk.push([nums[i], steps])
39
40
41
+ return res
42
+};
0 commit comments