#P2564. 生日礼物(Birthday Gift)
0
生日礼物(Birthday Gift)
生日礼物(Birthday Gift)
题目描述
小西有一条很长的彩带,彩带上挂着各式各样的彩珠。已知彩珠有 个,分为 种。简单的说,可以将彩带抽象为一个 x 轴,每一个彩珠有一个对应的坐标(即位置)。某些坐标上可以没有彩珠,但多个彩珠也可以出现在同一个位置上。
小布的生日快到了,于是小西打算剪一段彩带送给小布。为了让礼物彩带足够漂亮,小西希望这一段彩带中能包含所有种类的彩珠。同时,为了方便,小西希望这段彩带尽可能短,你能帮助小西计算这个最短的长度么?
彩带的长度即为彩带开始位置到结束位置的位置差。
输入格式
第一行包含两个整数 ,分别表示彩珠的总数以及种类数。
接下来 行,每行第一个数为 ,表示第 种彩珠的数目。
接下来按升序给出 个非负整数,为这 个彩珠分别出现的位置。
输出格式
输出应包含一行,为最短彩带长度。
样例输入 #1
6 3
1 5
2 1 7
3 1 3 8
样例输出 #1
3
数据范围
样例说明
有多种方案可选,其中比较短的是 和 。后者长度为 ,更短,故答案为 。
数据范围
对于 的数据,;
对于 的数据,;
对于 的数据,, 珠子位置 ,且 。
知识点与难度
本题涉及的知识点从属于 CSP-S,难度(CF Rating):1650。
测试点分布
| Subtask | 分值 | 测试点编号 | 说明 |
|---|---|---|---|
| 0 | 10 | 1 | 样例 |
| 1 | 20 | 2~7 | 小规模 N≤10^4 / 边界 K=1输出0 / 所有种类珠子重合于同一坐标输出0 |
| 2 | 15 | 8~11 | Hack: 坐标跨度达 0 ~ 2^31-1 / Hack: 某种珠子仅在最右端出现1次 / Hack: N=10^6,K=60满规模 |
| 3 | 30 | 12~20 | 大规模 N≤10^6, K≤60 归并双指针压力测试 |
| 4 | 25 | 21~25 | 随机分布回归测试 |
出处:原题链接