#P6015. [CSGRound3] 游戏

[CSGRound3] 游戏

题目背景

小 Y 和小 Z 是一对好朋友,他们在玩一个游戏。游戏只有一个回合

题目描述

有一个牌堆,一共有 nn 张牌,第 ii 张牌上有一个数 aia_i,其中第一张牌是堆顶。

小 Z 先取牌,他可以从堆顶开始取连续若干张牌(可以取 00),取完的牌拿在手上,也就是不在牌堆里了。

然后小 Y 取牌,同样,她也可以从堆顶开始取连续若干张牌(可以取 00)。

如果一个人手上的牌的数字和大于 XX,那么他的分数就是 00,否则分数就是数字和。

分数高的人获胜,如果一样高,则无人获胜

小 Z 为了获胜,使用了透视挂,即他知道牌堆里每张牌上写的数。

现在问你对于满足 1XK1 \leq X \leq K 的所有整数 XX,哪些可以使得小 Z 有必胜策略,即小 Z 取完后,不管小 Y 怎么取都一定会

输入格式

第一行一个整数 nn,表示牌堆里有几张牌。

第二行 nn 个整数 a1na_{1\dots n},表示每张牌上写的数。

第三行一个正整数 KK,含义见题目描述。

输出格式

第一行一个整数,表示满足要求的 XX 的个数。

第二行从小到大依次输出满足要求的 XX,用空格隔开。

5
1 4 3 2 2
5
3
1 2 3

提示

【样例解释】

X=1,2,3X=1,2,3 时,小 Z 取一张牌,小 Y 不管怎么取都是零分。

X=4X=4 时,小 Z 如果取 11 张,那么小 Y 取 11 张小 Y 就赢了;否则小 Z 只能是零分。

X=5X=5 时,小 Z 如果取 11 张,那么小 Y 取 11 张小 Y 就赢了;小 Z 如果取了 22 张,小 Y 也取 22 张,平局;否则小 Z 只能是零分。


【数据范围】

本题采用捆绑测试。

  • Subtask 1(3 points):n=1n = 1
  • Subtask 2(14 points):K=1K= 1
  • Subtask 3(20 points):n,K100n,K \le 100
  • Subtask 4(33 points):n,K3333n , K \le 3333
  • Subtask 5(30 points):无特殊限制。

对于 100%100\% 的数据,1n,K1061\leq n,K \leq 10^61aiK1\leq a_i \leq K