力扣2529.正整数的负整数的最大计数
题目
题目解析及思路
题目要求对于一个非递减的数组,返回正整数数目和负整数数目的较大值
二分0找到正负整数的下标即可
-
range作用域下的lowerbound和upperbound可以只传数组
- lowerbound和upperbound默认返回第一个大于target的位置(指针) 而不是下标
- lowerbound(nums,0) - nums.begin() 可以返回target左边的元素个数
代码
class Solution {
public:
int maximumCount(vector<int>& nums) {
auto r1 = ranges::lower_bound(nums,0) - nums.begin();
auto r2 = nums.end() - ranges::upper_bound(nums,0);
return max(r1,r2);
}
};