1
var MajorityChecker = function (arr) {
2
this.arr = arr;
3
};
4

5
MajorityChecker.prototype.query = function (left, right, threshold) {
6
var candidate = 0;
7
var count = 0;
8
for (var i = left; i < right + 1; i++) {
9
if (count == 0) {
10
candidate = this.arr[i];
11
count = 1;
12
} else if (candidate == this.arr[i]) {
13
count += 1;
14
} else {
15
count -= 1;
16
}
17
}
18

19
count = 0;
20
for (var i = left; i < right + 1; i++) {
21
if (candidate == this.arr[i]) {
22
count += 1;
23
}
24
}
25

26
if (count >= threshold) {
27
return candidate;
28
}
29
return -1;
30
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0