Bag of Tokens LeetCode solution in JavaScript

1
var bagOfTokensScore = function (tokens, power) {
2
const n = tokens.length;
3

4
tokens.sort((a, b) => a - b);
5

6
let maxScore = 0;
7
let currScore = 0;
8

9
let left = 0;
10
let right = n - 1;
11

12
while (left <= right) {
13
const leftPower = tokens[left];
14
const rightPower = tokens[right];
15

16
if (power >= leftPower) {
17
power -= leftPower;
18
currScore++;
19

20
maxScore = Math.max(currScore, maxScore);
21
left++;
22
} else if (currScore > 0) {
23
power += rightPower;
24
currScore--;
25
right--;
26
} else {
27
return maxScore;
28
}
29
}
30

31
return maxScore;
32
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0