{"trustable":false,"prependHtml":"\u003cstyle type\u003d\u0027text/css\u0027\u003e\n .input, .output {\n border: 1px solid #888888;\n }\n .output {\n margin-bottom: 1em;\n position: relative;\n top: -1px;\n }\n .output pre, .input pre {\n background-color: #EFEFEF;\n line-height: 1.25em;\n margin: 0;\n padding: 0.25em;\n }\n \u003c/style\u003e\n \u003clink rel\u003d\"stylesheet\" href\u003d\"//codeforces.org/s/96598/css/problem-statement.css\" type\u003d\"text/css\" /\u003e\u003cscript\u003e window.katexOptions \u003d { disable: true }; \u003c/script\u003e\n\u003cscript type\u003d\"text/x-mathjax-config\"\u003e\n MathJax.Hub.Config({\n tex2jax: {\n inlineMath: [[\u0027$$$\u0027,\u0027$$$\u0027], [\u0027$\u0027,\u0027$\u0027]],\n displayMath: [[\u0027$$$$$$\u0027,\u0027$$$$$$\u0027], [\u0027$$\u0027,\u0027$$\u0027]]\n }\n });\n\u003c/script\u003e\n\u003cscript type\u003d\"text/javascript\" async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS_HTML-full\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"MD","content":"\nAnoyer正在玩一个不寻常的游戏。 最初,他有n个盒子,编号为1,2,3,...,n。 每个盒子里面都有一些糖果,由序列a1,a2,...,an描述。 数字ak表示方框k中的糖果数量。\n\n游戏的目标是将所有糖果移到两个盒子中。 其余的n - 2盒子没糖果。 Anoyer被允许做这种(可能是零)移动: 在每次移动时,他选择两个不同的方框i和j,其中ai≤aj。 然后,Anoyer从盒子j移动糖果到盒子i,也就是ai个糖果。 显然,当两个盒子有相同数量的糖果时,盒子号j变空。\n\n你的任务是给他一组动作,比如Anoyer来存档游戏的目标。如果Anoyer不能为给定的框配置赢得游戏,输出-1。请注意,如果存在解决方案,打印最少移动步数并打印解决方案。"}},{"title":"Input","value":{"format":"MD","content":"\n输入的第一行包含整数n(3≤n≤1000)。 下一行包含n个非负整数:a1,a2,..., - 序列元素。 保证序列a中所有数字的总和最多为10^6。"}},{"title":"Output","value":{"format":"MD","content":"\n如果没有解决方案,输出-1。 否则,在第一行输出整数c(0≤c≤10^6),表示解决方案中的移动次数。 接下来的c行中的每一行应包含两个整数i和j(1≤i,j≤n,i≠j):第k行中的整数i,j表示在第k次移动时,您将从j移动糖果 - 第i个盒子。"}},{"title":"Examples","value":{"format":"MD","content":"#### 样例1\nInput\n3\n3 6 9\n\nOutput\n2\n2 3\n1 3\n#### 样例2\nInput\n3\n0 1 0\n\nOutput\n-1\n#### 样例3\nInput:\n4\n0 1 1 0\n\nOutput:\n0"}},{"title":"Note","value":{"format":"MD","content":"\n对于第一个样品,在第一次移动后,盒子将包含3,12和3个糖果。 第二步后,盒子将包含6,12和0个糖果。 现在所有的糖果都在两盒中。\n\n对于第二个样本,您可以观察到给定的配置无效,因为所有糖果都在一个盒子中,它们应该在两个盒子中。 此外,任何移动都不会改变配置,因此没有解决方案。\n\n对于第三个样本,所有糖果已经在2个盒子中。 因此,不需要采取任何行动。"}}]}