想象以下图表为垂直纵横交错的管组。
1 2 1 2 1 2 3 4
\ / \ / \ / \ /
X | | |
/ \ / \ / \ / \
2 1 1 2 | X |
\ / \ /
X X
/ \ / \
3 1 4 2
在最左边的图中,1
和和2
滑下各自的斜线,在处交叉X
,并从它们开始的相反侧出来。
中间图中的想法相同,但是|
表示路径没有交叉,因此没有任何变化。
最右边的图显示了置换1 2 3 4
为的更复杂的电子管布线3 1 4 2
。
目标
在此高尔夫挑战代码中,您的目标是在给定诸如的排列的情况下绘制这些“管状布线图” 3 1 4 2
。以字节为单位的最短程序将获胜。
细节
- 输入来自stdin,是数字从1到n的任意排列,用空格分隔,其中n是一个正整数。您可以假设所有输入的格式正确。
路由图输出转到stdout。
- 将数字1到n依次“ 滴加”到图的顶部,应导致输入排列在底部出现。(顶部和底部始终是斜线层。)
- 该图不必最佳地小。只要是正确的,它就可以根据需要有多个级别。
- 该图应仅包含字符
\/ X|
和换行符(无数字)。 |
应该始终在最外面的路口使用X
,因为使用没有意义。- 只要图中的所有行正确对齐,就可以使用一些前导或尾随空格。
例子
输入3 1 4 2
可能产生(与上述相同)
\ / \ /
| |
/ \ / \
| X |
\ / \ /
X X
/ \ / \
输入1
可能会产生
\
|
/
|
\
|
/
输入3 2 1
可能会产生
\ / \
X |
/ \ /
| X
\ / \
X |
/ \ /
输入2 1 3 4 6 5
可能会产生
\ / \ / \ /
X | X
/ \ / \ / \
X
直接连接到|
方式/
吗?要另一个X
?
row of slashes
,row of X's and |'s
,row of slashes
,row of X's and |'s
,...格式。
n
大于10吗?