C - Distribution Editorial by idsigma


\(T_i\) が最小値をとる \(i\) のうち \(1\) つをとって、それが \(1\) 人目となるように番号を振り直します。そして

  • \(dp_1=T_1, dp_{i+1}= \min(dp_i+S_i,T_{i+1})\)

という定義に従って計算した \(dp_i\) の値が新しい番号における答えとなります。

証明

\(1\) 人目の答えが \(dp_1\) になるのは明らか。

\(i\) 人目の答えが \(dp_i\) のとき、\((i+1)\) 人目の石は \(i\) 人から受け取るか、高橋君から受け取るかなので、上述の更新式で与えられる \(dp_{i+1}\) が答えとなる。

実装例

posted:
last update: