logo AlgoBeat OnlineJudge
登录 注册

#200786. 麻将 加强加强版

内存限制:512 MiB 时间限制:2000 ms 标准输入输出
题目类型:VJudge(洛谷) 评测方式:VJudge
上传者: 匿名

题目描述

此题为 P4050P6454 的加强版。

小 A 喜欢打麻将。


小 A 找到了一副奇怪的麻将牌:只有一种 的数牌,且每种牌都有无穷多张

定义「雀头」为两张一样的牌(如 ),「刻子」为三张一样的牌(如 ),「顺子」为三张序数相邻的牌(如 ,注意 不相邻)。「顺子」与「刻子」统称「面子」。

假如你能把你的手牌分为若干组「面子」(可以相同)以及一组「雀头」,那么你就可以「和牌」。

假如某副手牌加上某张牌后可以「和牌」,则称这副手牌「听」这张牌。

现在小 A 随意摸了 张牌,他想知道他「听」哪些牌。

输入格式

第一行两个正整数 ,分别表示牌的范围和小 A 手上牌的张数。

接下来一行 个整数 给出小 A 的手牌,每个数表示小 Z 手上的一张牌。

输出格式

第一行若干个正整数,表示小 A「听」哪些牌。请按照升序输出。

特殊地,如果小 A 不「听」任何牌,请输出 QAQ

样例

样例输入 1

4 4
1 2 3 4

样例输出 1

1 4

样例输入 2

9 13
1 1 1 2 3 4 5 6 7 8 9 9 9

样例输出 2

1 2 3 4 5 6 7 8 9

样例输入 3

2 2
1 2

样例输出 3

QAQ

数据范围与提示

【样例解释】

  • 样例一解释:两种情况,11/234123/44
  • 样例二解释:此牌型为「纯正九莲宝灯」,可以「听」所有数牌。

【数据范围】

本题采用捆绑测试。

  • Subtask 1(10 pts):
  • Subtask 2(10 pts):
  • Subtask 3(30 pts):
  • Subtask 4(30 pts):
  • Subtask 5(20 pts):无特殊限制。

对于所有数据,