【题目描述】
【思路】
排序 然后统计大小王的个数
用大小王区补非连接的数字
class Solution {
public boolean isContinuous(int [] numbers) {
if(numbers == null || numbers.length < 5 ) return false;
Arrays.sort(numbers);
//0,0,8,11,12
//11 - 8 - 1 = 2
int cnt = 0; //统计大小王的个数
for(int i = 0; i < 5; i ++){
if( numbers[i] == 0) {
cnt++;
continue;
}
//还有注意numbers[ i - 1] != 0特判掉 0 2 3 4 6 这种情况
if( i > 0 && numbers[i] - numbers[ i - 1] > 1 && numbers[ i - 1] != 0){
int t = numbers[i] - numbers[i - 1] - 1;
if( t > cnt ) return false;
cnt -= t;
}
}
return true;
}
}