难度简单102
给你一个整数数组 nums
,其中总是存在 唯一的 一个最大整数 。
请你找出数组中的最大元素并检查它是否 至少是数组中每个其他数字的两倍 。如果是,则返回 最大元素的下标 ,否则返回 -1
。
今天的每日一题,挺简单的
而且数据长度范围只有50,思路就和我昨天写的334有点像了,如果把昨天和今天的每日一题换一下,可能334那题的思路就很容易想到了。
class Solution {
public:
int dominantIndex(vector<int>& nums) {
int max=0,mid=0;
int ans=-1;
for(int i=0;i<nums.size();i++)
{
if(nums[i]>max)
{
mid=max;
max=nums[i];
ans=i;
}
else
{
if(nums[i]>mid&&nums[i]<max)
{
mid=nums[i];
}
}
}
return max>=2*mid?ans:-1;
}
};