1
/**
2
* @param {number[]} nums
3
* @return {number}
4
*/
5
var sumOfBeauties = function (nums) {
6
let min = nums[0],
7
max = Infinity,
8
maxArr = [],
9
total = 0;
10

11
// Creating an array, which will keep the record of minimum values from last index
12
for (let i = nums.length - 1; i > 1; i--) {
13
if (nums[i] < max) max = nums[i];
14
maxArr.push(max);
15
}
16

17
// iterating through array to check the given conditions
18
for (let i = 1; i < nums.length - 1; i++) {
19
// Keeping a record of max value from all index < i
20
if (nums[i - 1] > min) min = nums[i - 1];
21

22
// Checking conditions
23
if (nums[i] < maxArr.pop() && min < nums[i]) total += 2;
24
else if (nums[i - 1] < nums[i] && nums[i] < nums[i + 1]) total += 1;
25
}
26

27
return total;
28
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0