堆放货物

题目背景

Caesar 看了你建设的城市后非常满意,提拔你担任 Genoa 的地方总督,并加薪 $50$ 第纳尔。最近他又写信给你说:Genoa 不能只靠 Rome 的财政扶持,你必须开展城市贸易增加财政收入。 在花费 $500$ 第纳尔开通了至 Capua 的商路后,来自 Capua 的船只源源不断地驶来,Genoa 急需建立一个仓库来临时存放送往 Capua 的货物。

题目描述

Genoa 的货物有三种:陶器,家具,大理石,共有 $n$ 个。他们的重量分别为 $1$,$2$,$3$ 个单位。现在,有 $p$ 艘 Capua 的船只在等待着仓库的货物,你应该将仓库里的货物分成 $p$ 堆,堆放规则如下: - 同一堆中,重量从下至上应该是递减的(显然不能把大理石堆放在陶器或家具上)。 - 任意两堆重量之差不能超过 $3$ 个单位,否则会因分配过于不均发生船只间的冲突。 请你完成这个任务,给出一种可行的方案。

输入输出格式

输入格式


第一行有一个整数,表示货物的个数 $n$。 第二行有一个整数,表示堆数 $p$。 第三行有 $n$ 个整数,第 $i$ 个整数表示第 $i$ 个货物的重量 $a_i$。

输出格式


**本题存在 Special Judge**。 输出 $p$ 行,每行若干个整数描述一堆货物,按照每堆**从下到上**的顺序列出该堆中每个货物的数量。

输入输出样例

输入样例 #1

6
3
3 2 2 1 1 1

输出样例 #1

3 1
2 1
2 1

说明

#### 数据规模与约定 对于全部的测试点,保证 $2 \leq n \leq 10^3$,$1 \leq p \leq \lfloor\frac n 2 \rfloor$,$1 \leq a_i \leq 3$。 #### 说明 感谢 @cn:苏卿念 提供spj。 spj说明: ``` score:ouo:你的输出里面有不是'1','2','3',' ','\n','\r'的东西,具体以ASCII的第X号字符 score:pvp:你在第x组的时候装下了超过规定数量的'3'|'2'|'1'。 score:TAT:蛇皮judge没能读入到想要读入的东东(类似于你直接提交了一个puts(" / 特别特别多的空格/")) score:qaq:你把重量为w1的货物放到了w2上面(w1>w2)在第i组的第j个货物 score:ovo:你没有装足够的x score:qwq:你第i组和第j组的差的绝对值>3了,(要打架了),第i组的重量和为x,第j组的重量和为y。 score:pwp:答案正确,恭喜你嘤嘤嘤 ```