题目描述
现有
�
n位英雄,每位英雄有力量属性。需要击败防御力
�
x ,攻击力
�
y的巨龙,需要满足:
花费1金币,令某位英雄力量加一
选择一位英雄进攻,该英雄的力量至少为
�
x
其他英雄防守,其他英雄的力量之和至少为
�
y
现在有
�
m条恶龙,请你依次回答击败当前这条恶龙所需要花费的最少金币。
输入格式
第一行包含一个整数
�
(
2
≤
�
≤
2
∗
1
0
5
)
n(2≤n≤2∗10
5
)。 第二行包含
�
n个整数
�
1
,
�
2
,
.
.
.
,
�
�
(
1
≤
�
�
≤
1
0
12
)
a
1
,a
2
,...,a
n
(1≤a
i
≤10
12
)表示英雄的力量值。 第三行包含一个整数
�
(
1
≤
�
≤
2
∗
1
0
5
)
m(1≤m≤2∗10
5
)表示恶龙的数量。 以下
�
m行每行包含两个整数
�
,
�
(
1
≤
�
,
�
≤
1
0
18
)
x,y(1≤x,y≤10
18
)表示当前恶龙的防御力和攻击力。
输出格式
对于每个恶龙输出一个整数表示需要击败它所需要花费的最少金币。
样例
输入数据 1
4
3 6 2 3
5
3 12
7 9
4 14
1 10
8 7
输出数据 1
1
2
4
0
2
样例解释
为了击败第一条恶龙, 你可以将第三个勇者的力量增加1, 那么英雄们的力量值将会是
[
3
,
6
,
3
,
3
]
[3,6,3,3].为了击败这条恶龙,我们可以令第一个英雄出战。
谁能做出来这道世纪难题