给定了 n 个不同的点在二维坐标平面上。
保证对于所有给定的点 0 \leq y_i \leq 1。
从选择三个不同的点作为其顶点,可以形成多少个不同的直角三角形^{\text{∗}}?
如果存在一个点 v 使得 v 是 a 的一个顶点,但不是 b 的一个顶点,则两个三角形 a 和 b 是不同的。
第一行包含一个整数 n (3 \leq n \leq 2 \cdot 10^5) — 点的数量。
接下来的 n 行包含两个整数 x_i 和 y_i (0 \leq x_i \leq n, 0 \leq y_i \leq 1) 可以选择的第 i 个点。
保证所有 (x_i, y_i) 是成对不同的。
输出一个整数,表示可以从选择三个点中形成的不同直角三角形的数量。
5 1 0 1 1 3 0 5 0 2 1
4
3 0 0 1 0 3 0
0
9 1 0 2 0 3 0 4 0 5 0 2 1 7 1 8 1 9 1
8
30%的数据,n\leq 100;
100%的数据,n,x_i\leq 2 \times 10^5,0\leq y_i \leq 1;