CF746G.New Roads

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

There are nn cities in Berland, each of them has a unique id — an integer from 11 to nn , the capital is the one with id 11 . Now there is a serious problem in Berland with roads — there are no roads.

That is why there was a decision to build n1n-1 roads so that there will be exactly one simple path between each pair of cities.

In the construction plan tt integers a1,a2,...,ata_{1},a_{2},...,a_{t} were stated, where tt equals to the distance from the capital to the most distant city, concerning new roads. aia_{i} equals the number of cities which should be at the distance ii from the capital. The distance between two cities is the number of roads one has to pass on the way from one city to another.

Also, it was decided that among all the cities except the capital there should be exactly kk cities with exactly one road going from each of them. Such cities are dead-ends and can't be economically attractive. In calculation of these cities the capital is not taken into consideration regardless of the number of roads from it.

Your task is to offer a plan of road's construction which satisfies all the described conditions or to inform that it is impossible.

输入格式

The first line contains three positive numbers nn , tt and kk ( 2<=n<=21052<=n<=2·10^{5} , 1<=t,k<n1<=t,k<n ) — the distance to the most distant city from the capital and the number of cities which should be dead-ends (the capital in this number is not taken into consideration).

The second line contains a sequence of tt integers a1,a2,...,ata_{1},a_{2},...,a_{t} ( 1<=ai<n1<=a_{i}<n ), the ii -th number is the number of cities which should be at the distance ii from the capital. It is guaranteed that the sum of all the values aia_{i} equals n1n-1 .

输出格式

If it is impossible to built roads which satisfy all conditions, print -1.

Otherwise, in the first line print one integer nn — the number of cities in Berland. In the each of the next n1n-1 line print two integers — the ids of cities that are connected by a road. Each road should be printed exactly once. You can print the roads and the cities connected by a road in any order.

If there are multiple answers, print any of them. Remember that the capital has id 11 .

输入输出样例

  • 输入#1

    7 3 3
    2 3 1
    

    输出#1

    7
    1 3
    2 1
    2 6
    2 4
    7 4
    3 5
    
  • 输入#2

    14 5 6
    4 4 2 2 1
    

    输出#2

    14
    3 1
    1 4
    11 6
    1 2
    10 13
    6 10
    10 12
    14 12
    8 4
    5 1
    3 7
    2 6
    5 9
    
  • 输入#3

    3 1 1
    2
    

    输出#3

    -1
    
首页