class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param numbers int整型vector
* @return bool布尔型
*/
bool IsContinuous(vector<int>& numbers) {
// write code here
sort(numbers.begin(), numbers.end());
int jokers = 0; // 0 的个数(大小王)
int gaps = 0; // 非相邻之间的间隙总数
// 统计 0
int i = 0;
while (i < 5 && numbers[i] == 0) ++jokers, ++i;
// 在非 0 区间检查重复并累计间隙
for (; i < 4; ++i) {
if (numbers[i] == 0) continue;
if (numbers[i] == numbers[i + 1]) return false; // 有重复
gaps += numbers[i + 1] - numbers[i] - 1; // 间隙
}
return jokers >= gaps; // 0 能填满所有间隙即可
}
};