#include <bits/stdc++.h>
using namespace std;
#define sort stable_sort
int n, c;
struct node {
int id, num;
}a[100010];
bool cmp(node x, node y) {
if (x.num != y.num) return x.num > y.num;
return x.id < y.id;
}
signed main() {
ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
cin >> n >> c;
for (int i = 1; i <= c; i++) {
cin >> a[i].num;
a[i].id = i;
}
sort(a + 1, a + 1 + c, cmp);
for (int i = 1; i <= c; i++) {
if (a[i].num == 0) continue;
for (int j = i + 1; j <= c; j++) {
if (a[i].num > a[j].num) {
for (int k = 1; k <= a[j].num; k++) cout << a[i].id << " " << a[j].id << '\n';
a[i].num -= a[j].num;
a[j].num = 0;
} else {
for (int k = 1; k <= a[i].num; k++) cout << a[i].id << " " << a[j].id << '\n';
a[j].num -= a[i].num;
a[i].num = 0;
}
if (a[i].num == 0) break;
}
}
return 0;
}
70pts记录