2023年7月29日土曜日

Codeforces Round 887 (Div. 1)

 Bまで二完。Aがすぐ分からなかったが、Bを解いた後戻って考えたら分かった。

コンテスト後のツイート

C. Ina of the Mountain

 解説AC。解法ツイートでpriority queueを使うなどと言われても分からなかったが、公式Editorialが丁寧だった。

 (A[i]=kのものはA[i]=0に前処理した上で、)

・A[i]かA[i]+kのどちらかを使うと思って良い。
・登りのときだけコストがかかると考える。そうすると、次の戦略が最適:下りはとりあえず下っておくとする。下りを後で登りに変更することを考えると、-xの下りを登りに変更した場合、k-xのコストがかかることが分かる。なので、登るとき、「今までの下りのうちのどれかを登りに変更するか、ここを登るか」これらのうちの最小値を選べばよい。(ここでpriority queueを使う)

0 件のコメント:

コメントを投稿