public boolean stoneGameIX(int[] stones) {
        int[] cnt = new int[3];
        for (int stone : stones) {
            cnt[stone % 3]++;
        }
        if (cnt[0] % 2 == 0 && cnt[1] > 0 && cnt[2] > 0) {
           return true;
        }
        if (cnt[0] % 2 != 0 && (cnt[1] - cnt[2] > 2 || cnt[2] - cnt[1] > 2)) {
            return true;
        }
        return false;
    }