atcoder#ARC131D. [ARC131D] AtArcher
[ARC131D] AtArcher
题目描述
りんごさんはアーチェリーの大会「AtArcher」に出場しました。
AtArcher では、数直線上に表される的に 本の矢を撃って合計得点を競います。的の中心は座標 であり、矢が当たった位置に応じて以下のように得点が定められています。
- に対して、中心からの距離が から までの場所に当てると 点を獲得し、中心からの距離が より大きい場所に当てると 点を獲得する。境界に当たった場合は高い方の得点になる。
- 中心から近いほど高得点が得られるようになっている。すなわち、次を満たす。
- $ 0\ =\ r_0\ \lt\ r_1\ \lt\ \cdots\ \lt\ r_{M-1}\ \lt\ r_M $
例えば、 の場合、得点は下図のようになります。
さらに、AtArcher では「どの 本の矢も距離 以上の間隔を空ける」という特殊ルールがあります。これに違反した場合は失格となり、全体の得点が 点になります。
さて、りんごさんが全ての矢を撃ち終わった時点で、最大何点獲得できるでしょう?
输入格式
入力は以下の形式で標準入力から与えられます。
输出格式
答えを出力してください。
题目大意
数轴上有一个箭靶以 为轴心左右对称,给定每个得分区域的范围和分值,要求射 支箭在靶上,且任意两支箭的距离不少于 ,求最大得分。保证从中心向两侧分数不增。特别的,如果有一只箭射在了分界点上,以较大得分为准。
3 3 3
0 2 7 9
100 70 30
270
3 3 8
0 2 7 9
100 70 30
200
7 5 47
0 10 40 100 160 220
50 25 9 6 3
111
100 1 5
0 7
100000000000
300000000000
15 10 85
0 122 244 366 488 610 732 854 976 1098 1220
10 9 8 7 6 5 4 3 2 1
119
提示
制約
- $ 0\ =\ r_0\ \lt\ r_1\ \lt\ \cdots\ \lt\ r_{M-1}\ \lt\ r_M\ \leq\ 10^{11} $
- $ 10^{11}\ \geq\ s_0\ \gt\ s_1\ \gt\ \cdots\ \gt\ s_{M-1}\ \gt\ 0 $
- 入力はすべて整数
Sample Explanation 1
この入力例は問題文中の例に対応していますが、 となっています。 例えば、 本の矢が座標 に当たると、それぞれ 点を獲得します。このとき合計得点は 点となり、実現可能なものとしては最大です。 ![](https://img.atcoder.jp/arc131/3b9fbfbeaf90d953098e650d7b070e0d.png) なお、すべての矢を 点のエリアに当てて 点を取ることはできません。なぜなら、どの 本の矢も距離 以上の間隔を空けなければ、失格で 点になるからです。
Sample Explanation 2
この入力例も問題文中の例に対応していますが、 となっています。 例えば、 本の矢が座標 に当たると、それぞれ 点を獲得します。このとき合計得点は 点となり、実現可能なものとしては最大です。 ![](https://img.atcoder.jp/arc131/aefdd113cd212d29142783d0ffb1ea1e.png)
Sample Explanation 3
例えば、下図のように矢を当てると、合計得点は 点となり、これが最大です。 ![](https://img.atcoder.jp/arc131/2058c9b1e1deeea3bc6bae11da70b210.png)
Sample Explanation 4
本の矢を当てることができますが、失格にならないためには、得点が入るゾーンに 本までしか入れることができません。