#CSES1697. 国际象棋比赛

国际象棋比赛

题目背景

翻译自 CSES-1697 题。

题目描述

将会有一个包含 nn 名选手的国际象棋比赛。每个选手都宣布了他们希望参加的比赛次数。

每一对选手最多只能进行一场比赛。你的任务是确定哪些比赛将会进行,以确保每个选手都能获得他们想要的比赛次数。

输入格式

第一行包含一个整数 nn,表示选手的数量。选手编号为 1,2,,n1, 2, \dots, n

第二行包含 nn 个整数 x1,x2,,xnx_1, x_2, \dots, x_n,表示每个选手希望参加的比赛数量。

输出格式

首先输出一个整数 kk,表示比赛的数量。然后输出 kk 行,描述每一场比赛。你可以输出任何一个有效的解决方案。

如果没有解,输出 IMPOSSIBLE

样例

5
1 3 2 0 2
4
1 2
2 3
2 5
3 5

说明/提示

1n1051 \leq n \leq 10^5

i=1nxi2×105\sum_{i=1}^{n} x_i \leq 2 \times 10^5