如果你是动态修改每类牌所在的栈的编号,注意当连续加入一堆数字时是否存在将其修改后有数字加入了不存在的栈(如 0/−10/-10/−1)。推荐开一个 numnumnum 数组记录场上每一种牌的出现次数,当且仅当 num=0num=0num=0 时才修改。
当在牌堆中往后寻找第一张栈底的牌时,如果在找到栈底牌前先找到了堆顶的牌,这种情况要将它们都放入空栈中特殊处理。
每轮完成后队列中存在的 sz≤1sz\le 1sz≤1 的栈是否真的都 ≤1\le 1≤1,又是否存在更新后的新空栈?推荐每轮结束后都更新一下队列。
有没有及时将 szszsz 可能 ≤1\le 1≤1 的入队。
更新空栈编号与将数字放入栈中的顺序是否正确,比如有可能先将数字放入栈中动态修改导致得到了一个不合法的编号。
如果用了队列/双端队列,有没有特判 emptyemptyempty 的边界情况,以及多测清空问题。
都是很低级的错误,如果没有什么帮助抱歉。