diff --git a/2529. Maximum Count of Positive Integer and Negative Integer b/2529. Maximum Count of Positive Integer and Negative Integer new file mode 100644 index 0000000..02fb9cf --- /dev/null +++ b/2529. Maximum Count of Positive Integer and Negative Integer @@ -0,0 +1,26 @@ +class Solution { +public: + int maximumCount(vector& nums) { + int n = nums.size(); + int l = 0, r = n - 1; + while (l <= r){ + int mid = (l + r) >> 1; + if (nums[mid] < 0) + l = mid + 1; + else + r = mid - 1; + } + if (l < n && nums[l] != 0) + return max(l, n - l); + int neg = l; + r = n - 1; + while (l <= r){ + int mid = (l + r) >> 1; + if (nums[mid] == 0) + l = mid + 1; + else + r = mid - 1; + } + return max(neg, n - l); + } +};