E - Skiing Editorial by Tomii9273


広場 \(1\) から広場 \(i\) までの、ある移動経路について考えます。 ​
この経路を構成する「より高い場所へ行く移動」「より低い場所へ行くか標高の変化しない移動」「すべての移動」について、移動前後の広場間の標高差の絶対値の総和をそれぞれ \(U_i, D_i, d_i\) とします。 すると以下の2式が成立します。
\(d_i = U_i + D_i \)
\(H_i - H_1 = U_i - D_i \)
広場 \(i\) で行動を終えた場合の楽しさを \(P_i\) とすると、\(P_i = D_i - 2U_i = -\frac{1}{2}d_i - \frac{3}{2}(H_i - H_1)\) と表され、これは \(d_i\) が最小となるような移動経路を考えたときに最大値をとります (*) 。
よって、広場を頂点、坂を辺、広場間の標高差の絶対値を辺のコストとしたグラフを構成し、ダイクストラ法で点 \(1\) から各頂点への最短距離を求めて \(d_1, d_2, \ldots, d_n\) として、上記の式から \(\max_{i}{P_i}\) を計算することで解けます。

(*) このことは以下の直感的な考察と合致します:「目的地が固定なら、どこかで多く下ったらその分どこかで多く上らねばならず、多く動いた分の楽しさの和は負なのだから、結局上りも下りもなるべくしないほうが良さそう」

posted:
last update: