親密なシェフ (Intimate Chef)
시간 제한3초메모리 제한2048 MB
서로 사이가 나쁘지 않은 모든 요리사 쌍을 두 요리의 최댓값 합으로 정렬했을 때, 주어진 순위에 해당하는 쌍의 만족도를 구한다.
문제
あるボリビア料理レストランでは 1 から N までの番号が付けられている N 人のシェフが働いている.シェフ i (1 ≦ i ≦ N) は美味しさが Ai であるシルパンチョと美味しさが Bi であるピケマチョを作ることができる.
ただし,シェフはこだわりが強いため仲が悪い 2 人組が M 組いる.仲が悪い 2 人組の j 番目 (1 ≦ j ≦ M) はシェフ Uj とシェフ Vj の 2 人組である.
このレストランに来店する客は以下のようにして料理を食べる.
1 ≦ p < q ≦ Nを満たす整数p, qを選び,シェフpとシェフqの2人組に料理を作ることを依頼する.ただし,仲が悪い2人組に料理を作ることを依頼することはできない.- シルパンチョとピケマチョの各料理はシェフ
pとシェフqのうち美味しさがより高いものを作ることができるシェフが作る.ある料理について2人が同じ美味しさの料理を作ることができるとき,どちらか1人のシェフが作る.1人のシェフが2つの料理を作ることも可能であることに注意せよ. - 客の満足度はシルパンチョの美味しさとピケマチョの美味しさの合計である.
このレストランに 1 から Q までの番号が付けられている Q 人の客が来店した.
客 k (1 ≦ k ≦ Q) は,料理を作ることを依頼することができる 2 人組のうち,満足度が Xk 番目に高くなる 2 人組に料理を作ることを依頼した.具体的には満足度を S として,S × N2 + p × N + q が Xk 番目に高くなるシェフ p とシェフ q (1 ≦ p < q ≦ N) の 2 人組に料理を作ることを依頼した.
レストランのシェフと客の情報が与えられたとき,客 k (1 ≦ k ≦ Q) の満足度を求めるプログラムを作成せよ.
입력
入力は以下の形式で与えられる.
N M Q
A1 A2 … AN
B1 B2 … BN
U1 V1
U2 V2
:
UM VM
X1 X2 … XQ
출력
Q 行に出力せよ.k 行目 (1 ≦ k ≦ Q) には客 k の満足度を出力せよ.
제한
2 ≦ N ≦ 400 000.1 ≦ Ai ≦ 109(1 ≦ i ≦ N).1 ≦ Bi ≦ 109(1 ≦ i ≦ N).0 ≦ M ≦ 400 000.M < N(N - 1)÷2.1 ≦ Uj < Vj ≦ N(1 ≦ j ≦ M).(Ui, Vi) ≠ (Uj, Vj)(1 ≦ i < j ≦ M).1 ≦ Q ≦ 400 000.1 ≦ Xk ≦ 400 000(1 ≦ k ≦ Q).Xk ≦ N(N - 1)÷2 - M(1 ≦ k ≦ Q).- 入力される値はすべて整数である.