A1824 | 帮助
来源NOI
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
AC酱 的书架乱成一团了!帮他一下吧!
他的书架上一共有 $n$ 本书。我们定义混乱值是连续相同高度书本的段数。例如,如果书的高度是 $[30,30,31,31,32]$,那么混乱值为 $3$;$[30,32,32,31]$ 的混乱度也是 $3$,但 $[31,32,31,32,31]$ 的混乱度是 $5$,这实在是太乱了。
AC酱 想尽可能地减少混乱度,但他有点累了,所以他决定最多取出 $k$ 本书,再随意将它们放到书架上。你能帮助他吗?
他的书架上一共有 $n$ 本书。我们定义混乱值是连续相同高度书本的段数。例如,如果书的高度是 $[30,30,31,31,32]$,那么混乱值为 $3$;$[30,32,32,31]$ 的混乱度也是 $3$,但 $[31,32,31,32,31]$ 的混乱度是 $5$,这实在是太乱了。
AC酱 想尽可能地减少混乱度,但他有点累了,所以他决定最多取出 $k$ 本书,再随意将它们放到书架上。你能帮助他吗?
输入格式
每个输入文件包含最多 $20$ 组测试数据。
每组测试数据开头为两个整数 $n,k\ (l \le k \le n \le 100)$,表示总共有 $n$ 本书,最多可以进行 $k$ 次搬书操作。
接下来一行有 $n$ 个整数,表示每本书的高度,从左到右。每本书的高度是 $25$ 到 $32$ 间的整数。
最后一组数据后有一行 $n=k=0$,表示输入结束。
每组测试数据开头为两个整数 $n,k\ (l \le k \le n \le 100)$,表示总共有 $n$ 本书,最多可以进行 $k$ 次搬书操作。
接下来一行有 $n$ 个整数,表示每本书的高度,从左到右。每本书的高度是 $25$ 到 $32$ 间的整数。
最后一组数据后有一行 $n=k=0$,表示输入结束。
输出格式
对于每一组数据,输出 $\text{Case}$ 标号和最终最小的混乱度。在每组数据后输出一个空行。
输入输出样例
输入 #1
5 2 25 25 32 32 25 5 1 25 26 25 26 25 0 0
输出 #1
Case 1: 2 Case 2: 3
对于每一组数据,输出 $\text{Case}$ 标号和最终最小的混乱度。在每组数据后输出一个空行。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?