#P1371E1. Asterism (Easy Version)

    ID: 1516 远端评测题 1000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>binary searchbrute forcecombinatoricsmathnumber theorysortings*1900

Asterism (Easy Version)

Description

This is the easy version of the problem. The difference between versions is the constraints on nn and aia_i. You can make hacks only if all versions of the problem are solved.

First, Aoi came up with the following idea for the competitive programming problem:

Yuzu is a girl who collecting candies. Originally, she has xx candies. There are also nn enemies numbered with integers from 11 to nn. Enemy ii has aia_i candies.

Yuzu is going to determine a permutation PP. A permutation is an array consisting of nn distinct integers from 11 to nn in arbitrary order. For example, {2,3,1,5,4}\{2,3,1,5,4\} is a permutation, but {1,2,2}\{1,2,2\} is not a permutation (22 appears twice in the array) and {1,3,4}\{1,3,4\} is also not a permutation (because n=3n=3 but there is the number 44 in the array).

After that, she will do nn duels with the enemies with the following rules:

  • If Yuzu has equal or more number of candies than enemy PiP_i, she wins the duel and gets 11 candy. Otherwise, she loses the duel and gets nothing.
  • The candy which Yuzu gets will be used in the next duels.

Yuzu wants to win all duels. How many valid permutations PP exist?

This problem was easy and wasn't interesting for Akari, who is a friend of Aoi. And Akari made the following problem from the above idea:

Let's define f(x)f(x) as the number of valid permutations for the integer xx.

You are given nn, aa and a prime number pnp \le n. Let's call a positive integer xx good, if the value f(x)f(x) is not divisible by pp. Find all good integers xx.

Your task is to solve this problem made by Akari.

The first line contains two integers nn, pp (2pn2000)(2 \le p \le n \le 2000). It is guaranteed, that the number pp is prime (it has exactly two divisors 11 and pp).

The second line contains nn integers a1,a2,,ana_1, a_2, \ldots, a_n (1ai2000)(1 \le a_i \le 2000).

In the first line, print the number of good integers xx.

In the second line, output all good integers xx in the ascending order.

It is guaranteed that the number of good integers xx does not exceed 10510^5.

Input

The first line contains two integers nn, pp (2pn2000)(2 \le p \le n \le 2000). It is guaranteed, that the number pp is prime (it has exactly two divisors 11 and pp).

The second line contains nn integers a1,a2,,ana_1, a_2, \ldots, a_n (1ai2000)(1 \le a_i \le 2000).

Output

In the first line, print the number of good integers xx.

In the second line, output all good integers xx in the ascending order.

It is guaranteed that the number of good integers xx does not exceed 10510^5.

Samples

样例输入 1

3 2
3 4 5

样例输出 1

1
3

样例输入 2

4 3
2 3 5 6

样例输出 2

2
3 4

样例输入 3

4 3
9 1 1 1

样例输出 3

0

Note

In the first test, p=2p=2.

  • If x2x \le 2, there are no valid permutations for Yuzu. So f(x)=0f(x)=0 for all x2x \le 2. The number 00 is divisible by 22, so all integers x2x \leq 2 are not good.
  • If x=3x = 3, {1,2,3}\{1,2,3\} is the only valid permutation for Yuzu. So f(3)=1f(3)=1, so the number 33 is good.
  • If x=4x = 4, {1,2,3},{1,3,2},{2,1,3},{2,3,1}\{1,2,3\} , \{1,3,2\} , \{2,1,3\} , \{2,3,1\} are all valid permutations for Yuzu. So f(4)=4f(4)=4, so the number 44 is not good.
  • If x5x \ge 5, all 66 permutations are valid for Yuzu. So f(x)=6f(x)=6 for all x5x \ge 5, so all integers x5x \ge 5 are not good.

So, the only good number is 33.

In the third test, for all positive integers xx the value f(x)f(x) is divisible by p=3p = 3.