import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param numbers int整型一维数组 
     * @return bool布尔型
     */
    public boolean IsContinuous (int[] numbers) {
        // 每一个0都可以看做任意牌
        // 最多有四个0,也就是有0-4种情况
        HashMap<Integer,Integer> hashmap = new HashMap<>();
        // 设置顺子上下限
        int max = 0, min = 13;
        for(int i = 0; i < numbers.length; i++){
            if(numbers[i] > 0){
                // 顺子不能重复
                if(hashmap.containsKey(numbers[i])){
                    return false;
                }else{
                    // 将新牌加入哈希表
                    hashmap.put(numbers[i], i);
                    // 更新上下界
                    if(numbers[i] >= max){
                        max = numbers[i];
                    }
                    if(numbers[i] <= min){
                        min = numbers[i];
                    }
                }
            }
        }
        // 如果两张牌大于等于5,剩下三张票无论如何也补不齐
        if((max - min) >= 5){
            return false;
        }else{
            return true;
        }

    }
}