[Violet]天使玩偶/SJY摆棋子 题目传送门 解题思路 用CDQ分治开了氧气跑过. 将输入给的顺序作为第一维的时间,x为第二维,y为第三维.对于距离一个询问(ax,ay),将询问分为四块,左上,右上,左下,右下,对于坐下,左下的dist即为ax+ay-max(bx+by).所以只要查询时间小于自己的点里x+y最大的即可.对于其他四块,都可以转为左下,各自跑一遍CDQ. 代码如下 #include <bits/stdc++.h> using namespace std; int n, m;…