| 比赛场次 | 521 | 
|---|---|
| 比赛名称 | EYOI与SBOI开学欢乐赛5th | 
| 比赛状态 | 已结束比赛成绩 | 
| 开始时间 | 2022-09-16 19:00:00 | 
| 结束时间 | 2022-09-16 22:00:00 | 
| 开放分组 | 全部用户 | 
| 组织者 | yuan | 
| 注释介绍 | 稳定压倒一切,心静不断超越。 | 
| 题目名称 | 积木游戏 | 
|---|---|
| 输入输出 | buildinggame.in/out | 
| 时间限制 | 1000 ms (1 s) | 
| 内存限制 | 128 MiB | 
| 测试点数 | 10 简单对比 | 
| 用户 | 结果 | 时间 | 内存 | 得分 | 
|---|---|---|---|---|
| 
 | 
AAAAAAAAAA | 0.055 s | 1.18 MiB | 100 | 
| 
 | 
AAWAAWAAWA | 0.022 s | 1.16 MiB | 70 | 
| 
 | 
WWWAWWWAWA | 0.000 s | 0.00 MiB | 30 | 
| 
 | 
AATTTTTTTT | 8.000 s | 4.59 MiB | 20 | 
| 
 | 
C | 0.000 s | 0.00 MiB | 0 | 
| 
 | 
RRRRRRRRRR | 0.000 s | 0.00 MiB | 0 | 
| 
 | 
WWWWWWWWWW | 0.000 s | 0.00 MiB | 0 | 
$SERCOI$ 最近设计了一种积木游戏。每个游戏者有 $N$ 块编号依次为$1 ,2,…,N$的长方体积木。对于每块积木,它的三条不同的边分别称为”$a$边”、“$b$边”和”$c$边”,如下图所示:
 
游戏规则如下:
从 $N$ 块积木中选出若干块,并将它们分成 $M(l<=M<=N)$ 堆,称为第 $1$ 堆,第 $2$ 堆…,第 $M$ 堆。每堆至少有 $1$ 块积木,并且第 $K$ 堆中任意一块积木的编号要大于第 $K+1$ 堆中任意一块积木的编号$(1<=K<=M-1)$。
对于每一堆积木,游戏者要将它们垂直摞成一根柱子,并要求满足下面两个条件:
除最顶上的一块积木外,任意一块积木的上表面同且仅同另一块积木的下表面接触,并且要求下面的积木的上表面能包含上面的积木的下表面,也就是说,要求下面的积木的上表面的两对边的长度分别大于等于上面的积木的两对边的长度。
对于任意两块上下表面相接触的积木,下面的积木的编号要小于上面的积木的编号。
最后,根据每人所摞成的 $M$ 根柱子的高度之和来决出胜负。
请你编一程序,寻找一种摞积木的方案,使得你所摞成的 $M$ 根柱子的高度之和最大。
输入文件的第一行有两个正整数 $N$ 和 $M(1<=M<=N<=100)$,分别表示积木总数和要求摞成的柱子数。
接下来 $N$ 行依次是编号从 $1$ 到 $N$ 的 $N$ 个积木的尺寸,每行有三个 $1$ 至 $1000$ 之间的整数,分别表示该积木 $a$ 边,$b$ 边和 $c$ 边的长度。同一行相邻两个数之间用一个空格符隔开。
输出文件只有一行,为一个整数,表示 $M$ 根柱子的高度之和。
4 2 10 5 5 8 7 7 2 2 2 6 6 6
24
输入输出样例2
$NOI$ $1997$