vector<int> maxscoreindices(vector<int>& nums)
时间: 2023-12-03 11:05:00 浏览: 96
这个问题是要求找到一个数组中最大值的下标,如果有多个最大值,则返回所有最大值的下标。可以使用一个变量记录当前最大值,然后遍历数组,如果当前元素大于最大值,则更新最大值,并清空结果数组,将当前下标加入结果数组中。如果当前元素等于最大值,则将当前下标加入结果数组中。
以下是代码实现:
```
vector<int> maxscoreindices(vector<int>& nums) {
vector<int> res;
int maxScore = INT_MIN;
for (int i = 0; i < nums.size(); i++) {
if (nums[i] > maxScore) {
maxScore = nums[i];
res.clear();
res.push_back(i);
} else if (nums[i] == maxScore) {
res.push_back(i);
}
}
return res;
}
```
相关问题
vector<vector<int>> threeSum(vector<int>& nums)什么意思
nums) {
vector<vector<int>> res;
sort(nums.begin(), nums.end()); // sort the array in ascending order
int n = nums.size();
for(int i=0; i<n-2; i++) {
if(i==0 || (i>0 && nums[i]!=nums[i-1])) { // skip duplicates
int lo = i+1, hi = n-1, sum = 0-nums[i];
while(lo<hi) {
if(nums[lo]+nums[hi]==sum) {
res.push_back({nums[i], nums[lo], nums[hi]});
while(lo<hi && nums[lo]==nums[lo+1]) lo++; // skip duplicates
while(lo<hi && nums[hi]==nums[hi-1]) hi--; // skip duplicates
lo++; hi--;
} else if(nums[lo]+nums[hi]<sum) lo++;
else hi--;
}
}
}
return res;
}
vector<int> runningSum(vector<int>& nums)
nums) 的作用是什么?
vector<int> runningSum(vector<int> nums) 的作用是将一个整数型数组 nums 的所有前缀和计算出来返回一个新的数组。例如,如果 nums 为 [1, 2, 3, 4],则 runningSum(nums) 的返回值应该是 [1, 3, 6, 10],因为其每个位置上的数都是之前所有数的和。
阅读全文