#710. 分发蛋糕

分发蛋糕

问题描述

有一条长桌上有 nn 个空盘子,编号为 1n1 \sim n,现在要在上面进行 kk 次操作,每次操作选择一个区间 [l,r][l, r],给区间内每个盘子放一个蛋糕。接下来 qq 组查询,每次查询所有盘子中,哪个盘子蛋糕数量大于等于 xx,如果有多个,输出盘子编号最小的那个。

输入格式

第一行两个整数 n,kn, k,代表盘子数量与操作次数。

接下来 kk 行每行一个 [l,r][l, r],代表操作。

k+2k+2 行输入一个 qq,代表查询次数。

接下来 qq 行每行一个 xx,需要查询的大于等于 xx 的蛋糕数量且盘子编号最小的那个,如果不存在,输出 1-1

输出格式

对于 qq 组查询,每组输出大于等于 xx 的蛋糕数量且盘子编号最小的那个,如果不存在,输出 1-1

样例输入

5 2
1 3
3 5
3
1
2
3

样例输出

1
3
-1

说明

蛋糕分布为:a=[1,1,2,1,1]a = [1, 1, 2, 1, 1]。 因此输出 1,3,11, 3, -1

数据范围

1n1051 \leq n \leq 10^5 1k1051 \leq k \leq 10^5 1lrn1 \leq l \leq r \leq n 1q1051 \leq q \leq 10^5 1xk1 \leq x \leq k