#Y1149. 分组
题目描述
社区有个居民,每个居民有一定的地位和年龄,表示第个人的地位,表示第个人的年龄。 最近社区里要举行活动,要求几个人分成一个小组,小组中必须要有一个队长,要成为队长要满足以下条件: ①、队长在小组中的地位应该是最高的(可以并列第一); ②、小组中其他成员的年龄和队长的年龄差距不能超过。 有些人想和自己亲密的人组在同一个小组,同时希望所在的小组人越多越好。比如和想在同一个小组,同时希望他们所在的小组人越多越好,当然,它们也必须选一个符合上述条件的队长,那么问你,要同时包含和的小组,最多可以组多少人?
输入
第一行两个整数和。 接下来一行输入个整数:。 接下来一行输入个整数:。 接下来输入表示有个询问。 接下来行每行输入,表示询问:当和组在同一个小组,它们小组最多可以有多少人(和也有可能被选为队长,只要它们符合条件)。
输出
对于每个询问,输出相应的答案,每个答案占一行。 当和无法在同一组时,输出(比如的年龄是, 的年龄是,,无论谁当队长,和两者中,总会有人跟队长的年龄差距超过,那么输出)。
输入样例
5 1
1 5 4 1 2
4 4 3 2 2
4
5 3
2 3
2 5
4 1
输出样例
4
3
-1
4
提示
【样例解释】 询问1:当第个人和第个人想在一组时,小组成员可以有,选择当队长,而不可以加入,因为加入的话,和的年龄差距为,超过了。 询问2:当第个人和第个人想在一组时,可以选择。 询问3:当和想在一起时,无法满足要求。 询问4:当和想在一起时,可以选择。 【数据规模】 对于20%的数据:。 对于40%的数据:。 对于60%的数据:2≤n≤10^4,0≤k≤10^9,1≤r_i, a_i≤10^9, 1≤q≤10^4。 对于100%的数据:$2≤n≤10^5,0≤k≤10^9,1≤r_i, a_i≤10^9,1≤q≤10^5,1≤x, y≤n, x≠y$。
评测数据说明
本题使用按题意独立构造、以独立程序核对的训练数据及公开样例,共5个测试点,非原站或官方原始数据。总分100分。