传统题 2000ms 1024MiB

病毒片段

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

Description

随着网络攻击手段的演变,新型计算机病毒往往具有复杂的变体结构。为了应对这一威胁,某网络安全实验室构建了一个庞大的病毒特征库。库中包含了 nn 个已知的病毒代码特征片段,每个片段在内存地址空间中可视为一段连续的区间 [li,ri][l_i, r_i],代表该病毒特征出现的内存起止位置。

为了提高检测效率,实验室开发了一款新型的「区间扫描引擎」。该引擎并不对整个内存进行全量扫描,而是针对可疑的内存区域进行定向分析。

现在,引擎接收到了 qq 次扫描任务。每次任务给出一个待检测的内存区间 [L,R][L, R]。为了确保检测的准确性,引擎需要在特征库中寻找一条特征片段 jj,满足以下条件:

  1. 该特征片段必须完全包含在待检测区间内,即 LljL \le l_jrjRr_j \le R
  2. 在所有满足条件 1 的特征片段中,选择长度最长的一个。定义一个片段的长度为 rjlj+1r_j - l_j + 1

对于每次扫描任务,请输出能够匹配到的最长特征片段的长度。如果在该区域内没有任何完整的特征片段,则判定为安全,输出 00

Input

第一行包含两个整数 n,qn, q1n,q2×1051 \le n, q \le 2 \times 10^5),分别表示特征库中特征片段的数量和扫描任务的次数。

接下来 nn 行,每行包含两个整数 li,ril_i, r_i1liri1091 \le l_i \le r_i \le 10^9),表示第 ii 个特征片段的内存区间。

接下来 qq 行,每行包含两个整数 L,RL, R1LR1091 \le L \le R \le 10^9),表示一次扫描任务的待检测区间。

Output

对于每次询问,输出一行一个整数,表示在区间 [L,R][L, R] 内完全包含的最长特征片段的长度。若不存在,输出 00

Samples

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

Notes

询问 [1,5][1, 5]

  • 片段 1 ([1,5][1, 5]) 满足 111 \le 1555 \le 5,包含在内。
  • 片段 2 ([2,4][2, 4]) 满足 121 \le 2454 \le 5,包含在内。
  • 片段 3 ([3,3][3, 3]) 满足 131 \le 3353 \le 5,包含在内。
  • 最长长度为 max(5,3,1)=5\max(5, 3, 1) = 5

询问 [2,6][2, 6]

  • 片段 1 ([1,5][1, 5]) 不满足,因为 l1=1<L=2l_1=1 < L=2
  • 片段 2 ([2,4][2, 4]) 满足,长度 3。
  • 片段 3 ([3,3][3, 3]) 满足,长度 1。
  • 片段 4 ([6,8][6, 8]) 不满足,因为 r4=8>R=6r_4=8 > R=6
  • 最长长度为 33

询问 [7,12][7, 12]

  • 片段 5 ([7,10][7, 10]) 满足,长度 4。
  • 最长长度为 44

UESTC校赛 2026 合集

未参加
状态
已结束
规则
XCPC
题目
10
开始于
2026-8-1 16:00
结束于
2026-8-1 21:00
持续时间
5 小时
主持人
参赛人数
0