题目描述
给定一个包含 n 个点的序列,第 i 个点的坐标为 (ai,bi)。
共有 q 次询问。每次询问给出一个区间 [l,r],你需要求出区间内任意两个不同点之间的最小曼哈顿距离,即
$$\min_{i=l}^{r}\ \min_{j=i+1}^{r}
\left(|a_i-a_j|+|b_i-b_j|\right).$$
保证序列中点的坐标和询问区间,均在指定范围内按照指定方式随机生成。
输入格式
第一行输入两个正整数 n,q。
接下来 n 行,每行输入两个整数 ai,bi,表示第 i 个点的坐标为 (ai,bi)。
接下来 q 行,每行输入两个正整数 l,r,表示询问区间 [l,r]。
输出格式
输出 q 行,每行一个非负整数,表示对应询问的答案。
样例
4 5
1 1
2 2
1 2
2 1
1 4
1 3
1 2
2 3
3 4
1
1
2
1
2
数据范围
对于所有测试数据:
- 2≤n≤106;
- 1≤q≤106;
- ∣ai∣,∣bi∣≤109;
- 1≤l<r≤n;
- 保证 ai,bi,l,r 在对应范围内按照原题指定方式随机生成。
原题各测试点规模如下:
| 测试点编号 |
n≤ |
q≤ |
| 1∼2 |
2×103 |
| 3∼8 |
2×104 |
| 9∼14 |
2×105 |
| 15∼16 |
2×103 |
106 |
| 17∼19 |
106 |
10 |
| 20∼25 |
106 |
对于表中的每一档部分分,设其测试点编号范围为 L∼R:
- 测试点 L+1∼R−1 还满足 ∣ai∣,∣bi∣≤106;
- 测试点 ⌊2L+R⌋+1∼R 还满足 bi=0。
提示
本题输入输出规模较大,请使用较快的输入输出方式。