D - Inconvenient Pairs
思维
不方便的点对就是类似于,这种在同一行块或同一列块的两个点,他们的距离一定大于曼哈顿距离
其中红色为横向点对,紫色为纵向点对
所以可按 y 递增排序,找到每一个行块有多少个点,这一行块中的点对贡献为:\(\binom {cnt}2-\sum\binom {同一列的点的数量}2\)
注意当某个点的 y 就是行块分割的线时,它和任何点都不会构成 “横向” 的点对,所以可以一开始读入的时候记录下来,枚举到这个点就continue
求 “纵向” 点对数目同理
#include
#include
#include
#include
#include
#include