题意:
给出有序序列,查找target在序列中出现的下标区间。
思路:
熟练使用C++的upper_bound和lower_bound……
代码:
class Solution {
public:
vector<int> searchRange(vector<int> &nums, int target) {
int l = lower_bound(nums.begin(), nums.end(), target) - nums.begin();
if (l == nums.size() || nums[l] != target) {
return vector<int> {-1, -1};
}
int r = upper_bound(nums.begin(), nums.end(), target) - nums.begin();
return vector<int> {l, r - 1};
}
};