手动求和Cubically多维数据集的脸是繁琐且耗时的,有点像用Cubically本身编写代码。
在“ 最有效的优化器”中,我要求您将ASCII转换为Cubically源。答案之一是使用多维数据集初始化序列,然后根据预初始化的多维数据集之和修改所得的多维数据集。此后,该方法已在许多与Cubub相关的程序中使用。测试新的初始化序列时,必须将所有面上的所有值加起来,通常需要两到三分钟。
您的任务是为我们自动化此过程!
您将接受两个输入,一个整数n
和一个字符串c
。这些可以从命令行参数,函数参数,标准输入,文件或它们的任何组合中读取。c
将是一个立方大小的存储多维数据集,其大小n
由解释程序漂亮地打印出来。
Cubically解释器在程序终止时将其多维数据集转储到STDERR,格式正确,易于查看。在Cubically解释器中运行一个空程序,然后打开debug部分以查看已初始化多维数据集的多维数据集转储。添加参数4
以查看4x4x4或5
5x5x5等。
如果n
为3,c
将遵循以下格式(整数将是可变的):
000
000
000
111222333444
111222333444
111222333444
555
555
555
空格,换行符以及所有内容。如果n
为4,c
则将如下所示(也带有可变整数):
0000
0000
0000
0000
1111222233334444
1111222233334444
1111222233334444
1111222233334444
5555
5555
5555
5555
等等。
您的程序将输出六个整数。第一个整数将是顶面上所有数字的总和。
000
000 top face
000
111222333444 left, front, right, and back faces, respectively
111222333444
111222333444
555
555 bottom face
555
第二个整数将是左侧的总和,第三个是正面的总和,第四个是右侧,第五个是背面,第六个是底部。
所以如果n
是3,c
这是:
242
202
242
000131555313
010121535343
000131555313
424
454
424
您的程序将输出20 1 14 43 24 33
。
附加规则:
- 输出整数必须用非整数字符定界。您也可以选择返回一个数组。
- 您可以假设输入是正确的-
n
是一个整数,并且c
是Cubically调试输出中的一个多维数据集。因此,如果n
was3.0
和c
wasfoo bar
,您的程序可能会中断并且仍然有效。 - 您的程序只需要为
n > 1
和工作n < 1260
。它可以(试图)处理更大或更小的立方体尺寸,但这不是必需的。
n
每行后面有空格,则不行。它们不包含在转储中。