题目描述
给定整数序列 A=(a1,a2,…,aN),T=(t1,t2,…,tN) 和 X=(x1,x2,…,xQ)。
我们定义 N 个函数 f1(x),f2(x),…,fN(x) 如下:
$f_i(x) = \begin{cases} x + a_i & (t_i = 1)\\\\ \max(x, a_i) & (t_i = 2)\\\\ \min(x, a_i) & (t_i = 3)\\\\ \end{cases}$
对于每个 i=1,2,…,Q,计算 fN(…f2(f1(xi))…)。
约束条件
- 输入中的所有值都是整数。
- 1≤N≤2×105
- 1≤Q≤2×105
- ∣ai∣≤109
- 1≤ti≤3
- ∣xi∣≤109
输入
输入以以下格式从标准输入中给出:
N
a1 t1
a2 t2
⋮
aN tN
Q
x1 x2 ⋯ xQ
输出
打印 Q 行。第 i 行应该包含 fN(…f2(f1(xi))…)。
示例输入 1
3
-10 2
10 1
10 3
5
-15 -10 -5 0 5
示例输出 1
0
0
5
10
10
我们有 f1(x)=max(x,−10), f2(x)=x+10, f3(x)=min(x,10),因此:
- f3(f2(f1(−15)))=0
- f3(f2(f1(−10)))=0
- f3(f2(f1(−5)))=5
- f3(f2(f1(0)))=10
- f3(f2(f1(5)))=10