301807: CF341E. Candies Game
Memory Limit:256 MB
Time Limit:2 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Candies Game
题意翻译
有$n$个盒子,第$i$个盒子里面有$a_i$个糖果。每次选择两个盒子$i,j$,假设$a_i \le a_j$。然后从第$j$个盒子中拿出$a_i$个糖果,放到第$i$个盒子里面(显然,如果$a_i=a_j$,那么第$j$个盒子会变成空的)。你可以这样操作任意多次。要求最后只有$2$个盒子里面有糖果。输出方案。如果无论如何操作也无法满足条件,输出"$-1$"题目描述
Iahub is playing an uncommon game. Initially, he has $ n $ boxes, numbered 1, 2, 3, $ ... $ , $ n $ . Each box has some number of candies in it, described by a sequence $ a_{1} $ , $ a_{2} $ , $ ... $ , $ a_{n} $ . The number $ a_{k} $ represents the number of candies in box $ k $ . The goal of the game is to move all candies into exactly two boxes. The rest of $ n-2 $ boxes must contain zero candies. Iahub is allowed to do several (possible zero) moves. At each move he chooses two different boxes $ i $ and $ j $ , such that $ a_{i}<=a_{j} $ . Then, Iahub moves from box $ j $ to box $ i $ exactly $ a_{i} $ candies. Obviously, when two boxes have equal number of candies, box number $ j $ becomes empty. Your task is to give him a set of moves such as Iahub to archive the goal of the game. If Iahub can't win the game for the given configuration of boxes, output -1. Please note that in case there exist a solution, you don't need to print the solution using minimal number of moves.输入输出格式
输入格式
The first line of the input contains integer $ n $ ( $ 3<=n<=1000 $ ). The next line contains $ n $ non-negative integers: $ a_{1},a_{2},...,a_{n} $ — sequence elements. It is guaranteed that sum of all numbers in sequence $ a $ is up to $ 10^{6} $ .
输出格式
In case there exists no solution, output -1. Otherwise, in the first line output integer $ c $ $ (0<=c<=10^{6}) $ , representing number of moves in your solution. Each of the next $ c $ lines should contain two integers $ i $ and $ j $ $ (1<=i,j<=n,i≠j) $ : integers $ i $ , $ j $ in the $ k $ th line mean that at the $ k $ -th move you will move candies from the $ j $ -th box to the $ i $ -th one.
输入输出样例
输入样例 #1
3
3 6 9
输出样例 #1
2
2 3
1 3
输入样例 #2
3
0 1 0
输出样例 #2
-1
输入样例 #3
4
0 1 1 0
输出样例 #3
0