#include <bits/stdc++.h>
using namespace std;
#define sp " "
#define el '\n'
#define ll long long
void Solution()
{
int n, m;
cin >> n >> m;
vector<int>k(n+1), c(m+1);
deque<int>dq;
for(int i = 1; i <= n; i++) cin >> k[i];
for(int i = 1; i <= m; i++){
c[i] = i;
int x; cin >> x;
dq.push_front(x);
}
sort(k.rbegin(),k.rend());
ll ans = 0;
for(int i = n; i >= 1; i--){
auto lb = lower_bound(c.begin(),c.end(),k[i])- c.begin();
if(lb){
ans+=min(dq.front(),c[k[i]]);
if(dq.front() < c[k[i]]) {
dq.pop_front();
}
}
else {
ans+=c[k[i]];
}
cout << k[i] << " " << ans << el;
}
cout << ans << el;
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
// int t;
// cin >> t;
// for(int tc = 1; tc <= t; tc++)
Solution();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIHNwICIgIgojZGVmaW5lIGVsICdcbicKI2RlZmluZSBsbCBsb25nIGxvbmcKdm9pZCBTb2x1dGlvbigpCnsKICAgIGludCBuLCBtOwogICAgY2luID4+IG4gPj4gbTsKICAgIHZlY3RvcjxpbnQ+ayhuKzEpLCBjKG0rMSk7CiAgICBkZXF1ZTxpbnQ+ZHE7CiAgICBmb3IoaW50IGkgPSAxOyBpIDw9IG47IGkrKykgY2luID4+IGtbaV07CiAgICBmb3IoaW50IGkgPSAxOyBpIDw9IG07IGkrKyl7CiAgICAgICAgY1tpXSA9IGk7CiAgICAgICAgaW50IHg7IGNpbiA+PiB4OwogICAgICAgIGRxLnB1c2hfZnJvbnQoeCk7CiAgICB9CiAgICBzb3J0KGsucmJlZ2luKCksay5yZW5kKCkpOwogICAgbGwgYW5zID0gMDsKICAgIGZvcihpbnQgaSA9IG47IGkgPj0gMTsgaS0tKXsKICAgICAgICBhdXRvIGxiID0gbG93ZXJfYm91bmQoYy5iZWdpbigpLGMuZW5kKCksa1tpXSktIGMuYmVnaW4oKTsKICAgICAgICBpZihsYil7CiAgICAgICAgICAgIGFucys9bWluKGRxLmZyb250KCksY1trW2ldXSk7CiAgICAgICAgICAgIGlmKGRxLmZyb250KCkgPCBjW2tbaV1dKSB7CiAgICAgICAgICAgICAgICBkcS5wb3BfZnJvbnQoKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgYW5zKz1jW2tbaV1dOwogICAgICAgIH0KICAgICAgICBjb3V0IDw8IGtbaV0gPDwgIiAiIDw8IGFucyA8PCBlbDsKICAgIH0gCiAgICBjb3V0IDw8IGFucyA8PCBlbDsKCn0KaW50IG1haW4oKQp7CiAgICAgIGlvczo6c3luY193aXRoX3N0ZGlvKDApOwogICAgICBjaW4udGllKDApOyBjb3V0LnRpZSgwKTsKICAgIC8vICAgaW50IHQ7CiAgICAvLyAgIGNpbiA+PiB0OwogICAgLy8gICBmb3IoaW50IHRjID0gMTsgdGMgPD0gdDsgdGMrKykKICAgICAgICAgICAgU29sdXRpb24oKTsKICAgICAgcmV0dXJuIDA7Cn0=