luogu#P1905. 堆放货物

堆放货物

题目背景

Caesar 看了你建设的城市后非常满意,提拔你担任 Genoa 的地方总督,并加薪 5050 第纳尔。最近他又写信给你说:Genoa 不能只靠 Rome 的财政扶持,你必须开展城市贸易增加财政收入。

在花费 500500 第纳尔开通了至 Capua 的商路后,来自 Capua 的船只源源不断地驶来,Genoa 急需建立一个仓库来临时存放送往 Capua 的货物。

题目描述

Genoa 的货物有三种:陶器,家具,大理石,共有 nn 个。他们的重量分别为 112233 个单位。现在,有 pp 艘 Capua 的船只在等待着仓库的货物,你应该将仓库里的货物分成 pp 堆,堆放规则如下:

  • 同一堆中,重量从下至上应该是递减的(显然不能把大理石堆放在陶器或家具上)。
  • 任意两堆重量之差不能超过 33 个单位,否则会因分配过于不均发生船只间的冲突。

请你完成这个任务,给出一种可行的方案。

输入格式

第一行有一个整数,表示货物的个数 nn
第二行有一个整数,表示堆数 pp
第三行有 nn 个整数,第 ii 个整数表示第 ii 个货物的重量 aia_i

输出格式

本题存在 Special Judge

输出 pp 行,每行若干个整数描述一堆货物,按照每堆从下到上的顺序列出该堆中每个货物的数量。

6
3
3 2 2 1 1 1

3 1
2 1
2 1

提示

数据规模与约定

对于全部的测试点,保证 2n1032 \leq n \leq 10^31pn21 \leq p \leq \lfloor\frac n 2 \rfloor1ai31 \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:答案正确,恭喜你嘤嘤嘤