{"trustable":true,"prependHtml":"\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 async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS-MML_HTMLorMML\" type\u003d\"text/javascript\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"HTML","content":"\u003cdiv class\u003d\"panel_content\"\u003e今天阳光明媚!让我们去野餐、烧烤吧!今天,“向日葵”幼儿园的所有小朋友都准备好出游了。在出发前,刘老师告诉他们排成一排。刘老师有一个重要的消息要宣布,但她不想直接告诉他们。她只希望消息通过一个人告诉另一个人在孩子们中间传播开来。众所周知,孩子们可能不会完全按照他们听到的方式传达消息,所以刘老师想看看最终会有多少版本的消息出现。通过结果,她可以评估这些孩子的沟通技巧。\u003cbr\u003e因为所有孩子的身高不同,刘老师制定了一些消息传递规则如下:\u003cbr\u003e\u003cbr\u003e1.她把消息告诉给最高的孩子。\u003cbr\u003e\u003cbr\u003e2.每个收到消息的孩子必须把消息告诉他的“左信使”和“右信使”。\u003cbr\u003e\u003cbr\u003e3.一个孩子的“左信使”是该孩子的最高“左跟随者”。\u003cbr\u003e\u003cbr\u003e4.一个孩子的“左跟随者”是站在他左边、比他矮、并且能被他看到的另一个孩子。当然,一个孩子可能有多个“左跟随者”。\u003cbr\u003e\u003cbr\u003e5.当一个孩子向左看时,他只能看到离他最近的比他高的孩子。\u003cbr\u003e\u003cbr\u003e“右信使”的定义与“左信使”的定义类似,只是所有“左”都应替换为“右”。\u003cbr\u003e\u003cbr\u003e例如,假设排成一排的所有孩子的身高分别为4、1、6、3、5、2(从左到右)。在这种情况下,刘老师把消息告诉给第3个孩子,然后第3个孩子把消息传递给第1个孩子(他的“左信使”)和第5个孩子(他的“右信使”),然后第1个孩子告诉第2个孩子,第5个孩子告诉第4个孩子和第6个孩子。\u003cbr\u003e你的任务就是找出消息传递的路线。\u003c/div\u003e"}},{"title":"输入","value":{"format":"HTML","content":"第一行包含一个整数T,表示测试用例的数量,然后是T个测试用例。\u003cbr\u003e每个测试用例包括两行。第一行是一个整数N(0 \u003c N \u003c\u003d 50000),表示孩子的数量。第二行按照从左到右的顺序列出所有孩子的身高。保证每个孩子的身高都是唯一的,且小于2^31 - 1。"}},{"title":"输出","value":{"format":"HTML","content":"对于每个测试用例,首先打印“Case t:”(t是从1开始的案例编号)。然后打印N行。第i行包含两个整数,表示第i个孩子的“左信使”和“右信使”的位置。如果一个孩子没有“左信使”或“右信使”,请打印‘0’代替。(最左边的孩子位置为1,最右边的孩子位置为N)"}},{"title":"示例","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e2\r\n5\r\n5 2 4 3 1\r\n5\r\n2 1 4 3 5\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003eCase 1:\r\n0 3\r\n0 0\r\n2 4\r\n0 5\r\n0 0\r\nCase 2:\r\n0 2\r\n0 0\r\n1 4\r\n0 0\r\n3 0\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}