ENG  RUSTimus Online Judge
Online Judge
Problems
Authors
Online contests
About Online Judge
Frequently asked questions
Site news
Webboard
Links
Problem set
Submit solution
Judge status
Guide
Register
Update your info
Authors ranklist
Current contest
Scheduled contests
Past contests
Rules

2172. Meta-statement 2

Time limit: 1.0 second
Memory limit: 256 MB
...Then Vadim started writing another problem statement, when suddenly...
A certain contest has N sponsors, and each of them wants to see the name of their company in the exactly si different problem statements. However, the participants of this contest do not want to see references to more than K different sponsors in the same problem statement.
The jury can certainly handle such requirements, but they have a different question. The number of problems in the contest is currently unknown, but it is possible to include the company name in any of the problem statements (for example, “FIIT”). The jury does not want to work too hard, so they want to develop the minimum possible number of problems that satisfy the sponsors’ wishes without disappointing the participants of the contest.
However, the jury is currently busy coming up with ideas for the problem set, so the task of calculating this number of problems falls to you. Additionally, provide an example of how the sponsors can be distributed among the problem statements in such a contest.

Input

The first line contains two integers N and K — the sponsors’ wishes and the participants’ wishes (1 ≤ N, K ≤ 1000).
The second line contains N integers si separated by spaces — the wishes of each sponsor (1 ≤ si ≤ 1000).
It is guaranteed that the total number of sponsor wishes does not exceed 105.

Output

In the first line, output the minimum number of problems in the contest, M.
In the next M lines, describe the sponsors for each problem separately. First, output ki  — the number of sponsors in problem i, and then output ki numbers representing the sponsors for that problem, separated by spaces. The sponsors for one problem should be distinct.

Sample

inputoutput
5 2
1 1 1 1 1
3
1 5
2 2 3
2 4 1
Problem Author: Valentin Zuev
Problem Source: Ural School Programming Contest 2022