A61915 | 动物园里的动物房间一个紧挨着另一个排成一行,房间的门也是一个紧靠着一个,门的宽度都是一样的。有些房间里住着一个动物,有些没有。暴风雨把动物园的门都吹飞了。管理员现在的紧急任务是赶紧找些木板来坚立在那些住着动物的房间面前,防止他们溜出来。最直接的方式可以拿一块长长的木板直接横跨竖立在第一个房间到最后一个房间之间,但是这样太浪费木材长度了,因为有些房间没有动物在里面,可以不竖立木板在这些房间面前。木…
来源2023年
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
动物园里的动物房间一个紧挨着另一个排成一行,房间的门也是一个紧靠着一个,门的宽度都是一样的。有些房间里住着一个动物,有些没有。暴风雨把动物园的门都吹飞了。管理员现在的紧急任务是赶紧找些木板来坚立在那些住着动物的房间面前,防止他们溜出来。最直接的方式可以拿一块长长的木板直接横跨竖立在第一个房间到最后一个房间之间,但是这样太浪费木材长度了,因为有些房间没有动物在里面,可以不竖立木板在这些房间面前。木板供应商可以提供任意长度的木板,但是木板的块数是有限的,而且价格是按照所买的木板总长度计算的,不是按块数计算。管理员想买最小总长度的木板,把任务完成。(提示:例如长度为 3 的木板可以竖立在 3 个紧挨着的房间面前。)
给出 m(1<=m<=59)表示供应商能够提供的木板块数、s(1<=s<=209)表示房间总数、动物的总数n(1<=n<=s),以及每个动物所在房间编号(编号在1到s 之间,请算出拦住所有有动物的房间所需木板的最小总长度。输入: 第一行三个整 m,s,n,意义如题目描述。第二行输入n 个整数,表示动物所在的房间编号,编号并不一定按照从小到大。
输出:一行,一个整数,表示所需木板的最小总长度。
程序如下:

暂无题解
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?