调了好久 面向测试用例的编程hhhh
import java.util.*;
public class Solution {
public boolean isContinuous(int [] numbers) {
if(numbers==null||numbers.length==0)
return false;
//排序
Arrays.sort(numbers);
int kingnum=0;
int i=0;
//得出0的个数,i最后为第一个非0数
for(i=0;i<numbers.length;i++)
{
if(numbers[i]==0)
{
kingnum++;
}
else break;
}
int queshi=0;
for(int j=i+1;j<numbers.length;j++ )
{
//如果有相等则不构成顺子
if(numbers[j]==numbers[j-1])
return false;
//缺失个数
if(numbers[j]-1!=numbers[j-1]){
queshi+=numbers[j]-numbers[j-1]-1;
}
}
//缺失数字个数大于0的个数
if(queshi>kingnum)
return false;
return true;
}
}
京公网安备 11010502036488号