atcoder#ARC065C. [ARC065E] へんなコンパス

[ARC065E] へんなコンパス

题目描述

xy xy 平面上に N N 個の穴があります。i i 番目の穴の位置は (xi,yi) (x_i,y_i) です。

i i 番目の穴と j j 番目の穴のマンハッタン距離を d(i,j)(=xixj+yiyj) d(i,j)(=|x_i-x_j|+|y_i-y_j|) と表します。

あなたはマンハッタンコンパスを持っています。 このコンパスは、常に 2 2 個の穴を指します。 コンパスが p, q p,\ q 番目の穴を指している状態と、q, p q,\ p 番目の穴を指している状態は区別しません。

また、d(p,q)=d(p,r) d(p,q)=d(p,r) で、p p 番目の穴と q q 番目の穴を指しているとき、p p 番目の穴と r r 番目の穴を指すよう動かすことができます。

はじめ、コンパスは a a 番目の穴と b b 番目の穴を指しています。 コンパスが指すことのできる穴の組の数を求めてください。

输入格式

入力は以下の形式で標準入力から与えられる。

N N a a b b x1 x_1 y1 y_1 : xN x_N yN y_N

输出格式

コンパスが指すことのできる穴の組の数を出力せよ。

题目大意

在一个平面直角坐标系上有 nn 个点,第 ii 个点的坐标是 (xi,yi)(x_i,y_i),两个点 i,ji,j 之间的曼哈顿距离定义为 dis(i,j)=xixj+yiyjdis(i,j)=|x_i-x_j|+|y_i-y_j|

现在有一个指南针指向了这 nn 个点中的两个点 P(a,b)P(a,b),如果有一个点 xx 满足 dis(a,x)=dis(a,b)dis(a,x)=dis(a,b) 那么指南针的状态可以变更为 P(a,x)P(a,x),否则如果点 xx 满足 dis(b,x)=dis(a,b)dis(b,x)=dis(a,b),那么指南针的状态可以变更为 P(b,x)P(b,x)。(注意 P(i,j)P(i,j)P(j,i)P(j,i) 是同一种状态)。

现在给定 nnaabb,问你指南针总共有多少种不同的状态,即指南针能指向多少对点对。

5 1 2
1 1
4 3
6 1
5 5
4 8
4
6 2 3
1 3
5 3
3 5
8 4
4 7
2 5
4
8 1 2
1 5
4 3
8 2
4 7
8 8
3 3
6 6
4 8
7

提示

制約

  • 2N105 2≦N≦10^5
  • 1xi, yi109 1≦x_i,\ y_i≦10^9
  • 1a < bN 1≦a\ <\ b≦N
  • i  j i\ ≠\ j のとき (xi, yi)  (xj, yj) (x_i,\ y_i)\ ≠\ (x_j,\ y_j)
  • xi, yi x_i,\ y_i は整数である

Sample Explanation 1

はじめ、コンパスは 穴 1, 2 1,\ 2 を指しています。 d(1,2) = d(1,3) d(1,2)\ =\ d(1,3) なので、穴 1, 3 1,\ 3 を指すことができます。 d(1,3) = d(3,4) d(1,3)\ =\ d(3,4) なので、穴 3, 4 3,\ 4 を指すことができます。 d(1,2) = d(2,5) d(1,2)\ =\ d(2,5) なので、穴 2, 5 2,\ 5 を指すことができます。 他の穴の組でコンパスが指せるものはないため、答えは 4 4 となります。