AtCoder Beginner Contest 127

せめてパフォーマンス 1600+ は維持したい。できれば 2000+ ぐらいまで狙っていきたいところ。

 

 

Problems

  • A, B: はい
  • C: 右端と左端を管理する方針で、最後に max(0, result) を忘れて 1WA
  • D: B_i, C_i を map に入れたら微妙に実装が面倒くさかった。vector<pair<int,int>> で良かったな
  • E: これ camypaper 先生に教えてもらったやつだ、別の小単位に区切って足し合わせていくはずだけどどうやるんだっけ...となったまま手も足も出ず
  • F: sum(|x-a_i|) が最小となる x は a の中央値、というのは覚えてた。この f(x) を求めるのは......a の右半分と左半分を管理しておけばよさそうで、priority_queue 2個でいける?と思ったけどよくわからなくなり、set 2 個でやったら動いた(後から考えたら priority_queue のままでも行けたような)。しかし WA が取れず

Result

  • ABCD 563rd (1456 (+8), perf. 1528)

感想戦

  • F はアイデアは合ってて、a を右左半分に分けて管理するところがバグってただけだった。ひどい
  • E を解いて、ModInt と nCr をライブラリにした
  • 5完で perf. 1782, 6完で perf. 2228 以上行くらしい。解ける問題を解ききれるようになるだけで青はキープできるはずなんだよな