点击打开链接
// upper_bound()第一个>a的位置, low_bound()第一个<=a的位置
class Solution {
public:
int findDuplicate(vector<int>& nums) {
sort(nums.begin(), nums.end());
int num=0;
for(int i=0; i<nums.size(); i++){
num = nums[i];
if(upper_bound(nums.begin(), nums.end(), num)- lower_bound(nums.begin(), nums.end(), num)!=1){
break;
}
}
return num;
}
};