import java.util.Arrays;

public class Solution {
    public boolean IsContinuous(int [] numbers) {
        Arrays.sort(numbers);//排序
        int length = 0;//表示0的个数
        //统计0的个数
        for(int i=0;i<5;i++){
            if(numbers[i] == 0){
                length ++;
            }
        }
        
        //特殊情况:如果0的个数等于4,则无论第五个数是什么,都可以组成顺子
        if(length == 4){
            return true;
        }
        
        //在5个数中,只有0可以有两个或者两个以上,其他的数都不能,否则不可以组成顺子
        //第一个不是0的数与第二个不是0的数作比较
        if(numbers[length] == numbers[length+1]){
            return false;
        }
        //倒数第一个不是0的数与倒数第二个不是0的数作比较
        if(numbers[3] == numbers[4]){
            return false;
        }
        //中间的数前后进行比较,找出是否存在相同的数(除0)
        for(int i=length+1;i<4;i++){
            if(numbers[i] == numbers[i-1] || numbers[i] == numbers[i+1]){
                return false;
            }
        }
        //如果最大的数-最小的数(排除0以外的最小数)大于4,则不能组成顺子;
        if(numbers[4]-numbers[length]>4){
            return false;
        }
        
        return true;
    }
}