排序,0的个数(大小王个数),从最后一个0的下一个开始查找相邻元素的空缺总数,空缺总数大于0的个数:false;否则true
class Solution {
public:
bool IsContinuous( vector<int> numbers ) {
if(numbers.size()!= 5){
return false;
}
int num = 0;
for(int i = 0;i < numbers.size();i++){
if(numbers[i] == 0){
num++;
}
}
sort(numbers.begin(),numbers.end());
int small = num;
int big = small+1;
int Gapnum = 0;
while(big < numbers.size()){
if(numbers[big] == numbers[small]){
return false;
}
Gapnum += numbers[big] - numbers[small]-1;//空缺数量
small = big;
++big;
}
return (Gapnum > num) ? false : true;
}
};