#include <bits/stdc++.h>
using namespace std;
int N, M, K, desa[100001];
vector<int> adjList[100001];
bool visited[100001];
int dfs(int node) {
visited[node] = true;
int ans = desa[node];
for(int i = 0; i < adjList[node].size(); i++)
if(!visited[adjList[node][i]])
ans = min(ans, dfs(adjList[node][i]));
//for(auto it = adjList[node].begin(); it != adjList[node].end(); it++)
// if(!visited[*it])
// dfs(*it);
return ans;
}
int main() {
cin >> N >> M >> K;
vector<int> sulit, tarif(M);
for(int i = 0; i < N; i++)
cin >> desa[i];
for(int i = 0; i < M; i++)
cin >> tarif[i];
for(int i = 0; i < K; i++) {
int a, b;
cin >> a >> b;
a--; b--;
adjList[a].push_back(b);
adjList[b].push_back(a);
}
memset(visited, false, sizeof(visited));
for(int i = 0; i < N; i++)
if(!visited[i]) {
int ans = dfs(i);
sulit.push_back(ans);
// cout << i+1 << " " << ans << endl;
}
if(sulit.size() > tarif.size())
cout << -1 << endl;
else {
int total = 0, size = sulit.size();
sort(sulit.begin(), sulit.end());
sort(tarif.begin(), tarif.end());
for(int i = 0; i < size; i++)
total += sulit[i]*tarif[size-1-i];
cout << total << endl;
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgTiwgTSwgSywgZGVzYVsxMDAwMDFdOwp2ZWN0b3I8aW50PiBhZGpMaXN0WzEwMDAwMV07CmJvb2wgdmlzaXRlZFsxMDAwMDFdOwoKaW50IGRmcyhpbnQgbm9kZSkgewoJdmlzaXRlZFtub2RlXSA9IHRydWU7CglpbnQgYW5zID0gZGVzYVtub2RlXTsKCWZvcihpbnQgaSA9IDA7IGkgPCBhZGpMaXN0W25vZGVdLnNpemUoKTsgaSsrKQoJCWlmKCF2aXNpdGVkW2Fkakxpc3Rbbm9kZV1baV1dKQoJCQlhbnMgPSBtaW4oYW5zLCBkZnMoYWRqTGlzdFtub2RlXVtpXSkpOwoJLy9mb3IoYXV0byBpdCA9IGFkakxpc3Rbbm9kZV0uYmVnaW4oKTsgaXQgIT0gYWRqTGlzdFtub2RlXS5lbmQoKTsgaXQrKykKCS8vCWlmKCF2aXNpdGVkWyppdF0pCgkvLwkJZGZzKCppdCk7CglyZXR1cm4gYW5zOwp9CgppbnQgbWFpbigpIHsKCWNpbiA+PiBOID4+IE0gPj4gSzsKCXZlY3RvcjxpbnQ+IHN1bGl0LCB0YXJpZihNKTsKCWZvcihpbnQgaSA9IDA7IGkgPCBOOyBpKyspCgkJY2luID4+IGRlc2FbaV07Cglmb3IoaW50IGkgPSAwOyBpIDwgTTsgaSsrKQoJCWNpbiA+PiB0YXJpZltpXTsKCWZvcihpbnQgaSA9IDA7IGkgPCBLOyBpKyspIHsKCQlpbnQgYSwgYjsKCQljaW4gPj4gYSA+PiBiOwoJCWEtLTsgYi0tOwoJCWFkakxpc3RbYV0ucHVzaF9iYWNrKGIpOwoJCWFkakxpc3RbYl0ucHVzaF9iYWNrKGEpOwoJfQoJbWVtc2V0KHZpc2l0ZWQsIGZhbHNlLCBzaXplb2YodmlzaXRlZCkpOwoJZm9yKGludCBpID0gMDsgaSA8IE47IGkrKykKCQlpZighdmlzaXRlZFtpXSkgewoJCQlpbnQgYW5zID0gZGZzKGkpOwoJCQlzdWxpdC5wdXNoX2JhY2soYW5zKTsKCQkJLy8gY291dCA8PCBpKzEgPDwgIiAiIDw8IGFucyA8PCBlbmRsOwoJCX0KCWlmKHN1bGl0LnNpemUoKSA+IHRhcmlmLnNpemUoKSkKCQljb3V0IDw8IC0xIDw8IGVuZGw7CgllbHNlIHsKCQlpbnQgdG90YWwgPSAwLCBzaXplID0gc3VsaXQuc2l6ZSgpOwoJCXNvcnQoc3VsaXQuYmVnaW4oKSwgc3VsaXQuZW5kKCkpOwoJCXNvcnQodGFyaWYuYmVnaW4oKSwgdGFyaWYuZW5kKCkpOwoJCWZvcihpbnQgaSA9IDA7IGkgPCBzaXplOyBpKyspCgkJCXRvdGFsICs9IHN1bGl0W2ldKnRhcmlmW3NpemUtMS1pXTsKCQljb3V0IDw8IHRvdGFsIDw8IGVuZGw7Cgl9CglyZXR1cm4gMDsKfQ==