rt,写挂了/dk
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int n, m, l, a[100005], b[100005], c[100005], mp[100005];
int main() {
ios::sync_with_stdio(0);
cin.tie(0), cout.tie(0);
cin >> n >> m >> l;
for (int i = 1;i <= n;i++) cin >> a[i];
for (int i = 1;i <= m;i++) {
cin >> b[i];
c[i] = b[i];
}
sort(c+1, c+1+m);
for (int i = 1;i <= n;i++) mp[i] = m;
for (int i = 1;i <= l;i++) {
int ci, di;
cin >> ci >> di;
if (b[di] == c[mp[ci]]) mp[ci]--;
}
int ans = 0;
for (int i = 1;i <= n;i++) ans = max(ans, a[i]+c[mp[i]]);
cout << ans;
return 0;
}
mp[i] 表示第 i 道主菜能配对到的最大小菜编号。