ABC218D - Rectangles


対角線上の2点を決める

長方形は,対角線上の2点により一意に決まる.よって,
  1. 左上と右下の座標を決めたとき,
  2. 左下と右上の座標が集合に含まれるか判定する

setのinなら$O(1)$で計算できるのがポイント.

【参考】Submission #25786522 - AtCoder Beginner Contest 218

対辺の数を求める

$x$座標が等しい2点に対し,2点の$y$座標の組$(y_{1}, y_{2})$をindexとしたカウンタD[(y1, y2)]を考える.

各$(y1, y2)$に対して,D[(y1, y2)]から2つ選ぶ組み合わせを足し合わせたものが答えになる.
【参考】Submission #25759295 - AtCoder Beginner Contest 218