🕒 2020/10/05
🔄 2021/06/14
ABC058D/ARC071B 井井井を解きました
🍣
これを解きました:ABC058D/ARC071B 井井井
全部の長方形を計算するのはもちろん間に合わない。
結局、長方形の面積を出すときに、縦の長さを全部書き出して、横の長さを全部書き出して掛けるのだから、「縦の長さを全部足したもの」×「横の長さを全部足したもの」とやっても出せる。
横の長さを全部足したものは、例えば、x(i) から x(i+1) の辺が選ばれる場合を考えると、左がi以下、右がi+1以上を選んだ場合なので、こうなる場合の数は掛け算で求まる。この回数だけ x(i+1)-x(i) が足されるので、この横幅を掛ければいい。あとはこれをiについて足せば、「横の長さを全部足したもの」になる。
縦も同じようにして、あとは掛ければ求められる。
はじめ、NとMが同じだと勘違いしていてバグらせてしまった。