排序法
- 思路简单,但是注意项比较多
- 1.非零重复时,返回false。 2. len-1只要小于3就满足条件,最苛刻才是等于3
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param numbers int整型vector
* @return bool布尔型
*/
bool IsContinuous(vector<int>& numbers) {
// write code here
sort(numbers.begin(),numbers.end());
int k=-1;
int max_v=numbers[numbers.size()-1];
for(int i=numbers.size()-1;i>=0;i--)
{
if(i!=0&&numbers[i]==numbers[i-1]&&numbers[i]!=0)
{
return false;
}
if(numbers[i]==0)
{
k=i;
break;
}
}
int min_v=numbers[k+1];
int len=max_v-min_v;
return len-1<=3;
}
};