URL: https://leetcode.com/problems/maximum-count-of-positive-integer-and-negative-integer/ Signed-off-by: Matej Focko <me@mfocko.xyz>
23 lines
413 B
Go
23 lines
413 B
Go
package main
|
|
|
|
import (
|
|
"cmp"
|
|
"slices"
|
|
)
|
|
|
|
func maximumCount(nums []int) int {
|
|
makeComparator := func(override int) func(int, int) int {
|
|
return func(e, t int) int {
|
|
if e == t {
|
|
return override
|
|
}
|
|
|
|
return cmp.Compare(e, t)
|
|
}
|
|
}
|
|
|
|
left, _ := slices.BinarySearchFunc(nums, 0, makeComparator(1))
|
|
right, _ := slices.BinarySearchFunc(nums, 0, makeComparator(-1))
|
|
|
|
return max(left, len(nums)-right)
|
|
}
|