#Lutece0976. 单偶数阶魔方
单偶数阶魔方
Migrated from Lutece 976 单偶数阶魔方
All parts of this problem, including description, images, samples, data and checker, might be broken. If you find bugs in this problem, please contact the admins.
Description
奇数阶魔方矩阵。规律如下:
- 首先,将数置于第一行中间的方格里,然后将相继的数按自然顺序置入右上角的方格内
- 当前行若是第一行,下一个数应置入最下行右邻列的方格里,就像把最下行移到了第一行的上边似的
- 当前列是最右列时,下一个数应置入第一列的上邻行的方格里,就像把第一列移到最右列的右边似的
- 当右上方格已经填有数字或者当前方格在正方形的右上角时,下一个数应置入该方格正下方的相邻方格内
而要构造单偶数阶(魔方,可以先将正方形分成四个大小相等的小正方形,,,。记,用上面的方法,将到的正整数在里排成一个魔方,再将到,到,到分别在,,里排成魔方。将的正中间行里从第二列起的个方格、其他行里最靠左边的个方格里的数字与中相应的方格中的数字相互交换。然后再将的最右边的列的每个方格中的数字与中相应的方格中的数字相互交换。这样就形成了一个单偶数阶魔方。下面各图给出了构造方法与步骤。
Input
本题有多组输入数据。第一行是输入数组的组数,每组数据占一行,只一个单偶数。,。
Output
对应每组数据,应输出一个构造好的魔方,每个元素后应有一个空格,两组输出数据间应有一个空行。
Samples
1
6
35 1 6 26 19 24
3 32 7 21 23 25
31 9 2 22 27 20
8 28 33 17 10 15
30 5 34 12 14 16
4 36 29 13 18 11
Resources
wxiaoping 2009年C语言第九次上机