#D0954. 卡片回收
卡片回收
题目描述
小 B 把 张卡片从左到右摆成一排,位置依次编号为 到 。第 张卡片的类别为 ,积分为 。
对于第 张卡片,如果它的右侧存在同类别的卡片,设其中离它最近的一张位于 。当 时,小 B 可以回收第 张卡片,获得 积分。右侧没有同类别卡片,或距离超过 时,不能回收。
请计算回收所有符合条件的卡片后,能获得的积分总和。
所有判定都依据最初的排列。回收不会改变卡片的位置编号或距离。右侧那张卡片是否能被回收,不影响当前卡片的判定。
输入格式
第一行两个整数 。
接下来 行,第 行包含两个整数 ,表示第 张卡片的类别和积分。
输出格式
输出一个整数,表示能获得的积分总和。
样例
4 2
1 5
2 7
1 11
1 13
16
1 1
9 100
0
5 1
2 3
2 5
2 7
1 11
2 13
8
样例解释
样例 1:第 张右侧最近的同类卡片在位置 ,距离为 ,可得 分。第 张右侧最近的同类卡片在位置 ,距离为 ,可得 分。其余两张右侧没有同类卡片,总分为 。
样例 2:唯一一张卡片的右侧没有卡片,不能回收。
样例 3:第 张可以回收,得分为 。第 张与右侧最近同类卡片的距离为 ,大于 ;第 张右侧没有同类卡片。
数据范围与约定
对于 的数据,,。
| 子任务 | 分值 | 限制 |
|---|---|---|
| 1 | 30 | |
| 2 | 70 | 无额外限制 |
相关
在下列比赛中: