CF1214E.Petya and Construction Set
普及+/提高
通过率:0%
时间限制:1.00s
内存限制:512MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
It's Petya's birthday party and his friends have presented him a brand new "Electrician-n" construction set, which they are sure he will enjoy as he always does with weird puzzles they give him.
Construction set "Electrician-n" consists of 2n−1 wires and 2n light bulbs. Each bulb has its own unique index that is an integer from 1 to 2n, while all wires look the same and are indistinguishable. In order to complete this construction set one has to use each of the wires to connect two distinct bulbs. We define a chain in a completed construction set as a sequence of distinct bulbs of length at least two, such that every two consecutive bulbs in this sequence are directly connected by a wire. Completed construction set configuration is said to be correct if a resulting network of bulbs and wires has a tree structure, i.e. any two distinct bulbs are the endpoints of some chain.
Petya was assembling different configurations for several days, and he noticed that sometimes some of the bulbs turn on. After a series of experiments he came up with a conclusion that bulbs indexed 2i and 2i−1 turn on if the chain connecting them consists of exactly di wires. Moreover, the following important condition holds: the value of di is never greater than n.
Petya did his best but was not able to find a configuration that makes all bulbs to turn on, so he seeks your assistance. Please, find out a configuration that makes all bulbs shine. It is guaranteed that such configuration always exists.
今天是佩佳的生日派对,他的朋友们送给他一套崭新的“电工-n”拼装玩具,他们确信佩佳一定会喜欢——毕竟他向来都喜欢朋友们送给他的这些古怪谜题。
“电工-n”拼装玩具包含 2n−1 根导线和 2n 个灯泡。每个灯泡都有一个唯一的编号,为 1 到 2n 之间的整数;而所有导线外观完全相同、无法区分。要完成该拼装玩具,必须用每根导线连接两个不同的灯泡。我们定义:在一个已完成的拼装结构中,链(chain) 是一个长度至少为 2 的、由互不相同的灯泡组成的序列,使得该序列中任意两个相邻灯泡之间都直接由一根导线连接。若一个已完成的拼装结构所形成的灯泡与导线网络具有树形结构(即任意两个不同的灯泡都是某条链的两个端点),则称该配置为正确的。
佩佳连续多日尝试组装各种配置,期间他注意到有时某些灯泡会亮起。经过一系列实验,他得出结论:当连接编号为 2i 和 2i−1 的灯泡的链恰好包含 di 根导线时,这两个灯泡就会亮起。此外,以下重要条件恒成立:di 的值永远不会超过 n。
佩佳竭尽全力,却始终未能找到一种能让所有灯泡都亮起的配置,因此他向你求助。请找出一种配置,使得所有灯泡均被点亮。题目保证这样的配置一定存在。
输入格式
The first line of the input contains a single integer n (1≤n≤100000) — the parameter of a construction set that defines the number of bulbs and the number of wires.
Next line contains n integers d1,d2,…,dn (1≤di≤n), where di stands for the number of wires the chain between bulbs 2i and 2i−1 should consist of.
输入的第一行包含一个整数 n(1≤n≤100000)—— 构造套件的参数,用于确定灯泡数量和导线数量。
下一行包含 n 个整数 d1,d2,…,dn(1≤di≤n),其中 di 表示连接灯泡 2i 与 2i−1 的链所应包含的导线数量。
输出格式
Print 2n−1 lines. The i-th of them should contain two distinct integers ai and bi (1≤ai,bi≤2n, ai=bi) — indices of bulbs connected by a wire.
If there are several possible valid answer you can print any of them.
输出 2n−1 行。其中第 i 行应包含两个不同的整数 ai 和 bi(1≤ai,bi≤2n,且 ai=bi)—— 表示由导线连接的两个灯泡的编号。
若存在多个可能的有效答案,输出任意一个即可。
输入输出样例
输入#1
3 2 2 2
输出#1
1 6 2 6 3 5 3 6 4 5
输入#2
4 2 2 2 1
输出#2
1 6 1 7 2 6 3 5 3 6 4 5 7 8
输入#3
6 2 2 2 2 2 2
输出#3
1 3 2 3 3 5 4 5 5 7 6 7 7 12 8 12 9 11 9 12 10 11
输入#4
2 1 1
输出#4
1 2 1 4 3 4
说明/提示

Answer for the first sample test.

Answer for the second sample test.

第一个样例测试的答案。

第二个样例测试的答案。
输入解题思路,AI测评打分。不知道怎么写?