先进行排序
如果numbers[i]-numbers[i-1]=1,说明不需要0插入
如果numbers[i]-numbers[i-1]=n>1,说明需要n个0进行插入才能形成顺子
如果numbers[i]-numbers[i-1]=0,说明不可能形成顺子
class Solution {
public:
bool IsContinuous( vector<int> numbers ) {
sort(numbers.begin(),numbers.end());
int cnt=0,i=0;
while(numbers[i]==0){ //计算0的个数
cnt++;
i++;
}
for(i=i+1;i<numbers.size();i++){
if(numbers[i]==numbers[i-1]) return false;
cnt-=(numbers[i]-numbers[i-1]-1);
}
return cnt>=0;
}
};