ABCの3完。失敗。
- A You should output ARC, though this is ABC
- B Light It Up
- C ±1 Operation 1
- D ±1 Operation 2
- E Lucky Numbers
- 総括
A You should output ARC, though this is ABC
自明。
B Light It Up
その人から最も近い明かりを持った人の距離の最大値。
解説には、可能であれば整数性を崩さずに比較しようと書いてあった。 今回の問題でいうと距離を比較するとき、平方根を取らずに比較しようとのこと。 これは気をつけていなかった。気をつけたい。
C ±1 Operation 1
Xをどの良い数にするか二分探索。
D ±1 Operation 2
解けなかった。
Dの解法
前計算と二分探索が鍵。
fb、bbを前計算する。
- fb[i]: a[0 i]の値をa[i]にするコスト
- bb[i]: a[i n-1]の値をa[i]にするコスト
Xi以上の要素の添字をiとする。
次の手順で操作する。Xi以上/未満の要素をa[i]にするコストは前計算しておいた。
- Xi以上の要素をa[i]にする
- Xi以上の要素をa[i]からXiにする
- Xi未満の要素をa[i-1]にする
- Xi未満の要素をa[i-1]からXiにする
Dの経過
実装してみたが、前計算する値の定義があいまいで、バグらせてしまった。 上の解法の定義は、落ち着いて再定義したもの。
E Lucky Numbers
解いていない。
を決め打ちするそう。
ゴリゴリ実装すれば解けそう。
総括
成績は悪い。
おちつく。 変数の定義をコメントに書く。 定義が素直な値を前計算する。