pyてよn日記

一寸先は闇が人生

ABC027: B - 島と橋

問題


ABC027: B - 島と橋

考察


 まず始めに,

  • 人数の合計 sum が  0 のときは  0
  • sum が島の数  N で割り切れなかったら -1

までは分かった.その後解法が思いつかなかっのでとりあえずサンプルを紙に書き出してみたら解法が分かった.分けた後の各島の人数は  sum/N であるため,その人数と初期値の差分ベクトルを計算し,累積和を求め,それがゼロになったところを  1 グループとして橋をかければいいんじゃないかと考えた.考察は以下の通り.

f:id:pytwbf201830:20190103193524j:plain:w350:h300

解法


www.slideshare.net

 解法は上の考察をそのまま実装すれば良い.

ABC027: B - 島と橋

 「累積和が  0 になったらグループ化して橋をかける」という考察が上手くできて嬉しかったのでついついブログに書いてしまいました.ここまで読んでくださりありがとうございます.