【求助】苏州noi网站题目,d086
pascal吧
全部回复
仅看楼主
level 2
内容:
把整数1到n2(n为奇数)排成一个n×n方阵,使方阵中的每一行、每一列以及对角线上的数之和都相同。这样的方阵(行列数相等的矩阵称为方阵)称为n阶奇数幻方。
研究发现,n阶奇数幻方可以按下列方法生成:
把数1填在第一行的正中间(a[1,n div 2 +1]),然后用一个循环依次填入数2到n2。一边填数以便找下一个数应该在的位置,填数按照下面的规律进行:
如果数k填在第i行第j列的格子中(a[i,j]),那么一般情况下,数k+1应填在它的左上方,即a[i-1,j-1]位置上;但是,如果左上方无格子(越界了,即i-1为0或j-1为0),那么就做如下处理:若i-1为0,那么就填在a[n,j-1];若j-1为0,那么就填在a[i-1,n]。如果找到的格子中已填过数了,那么数k+1改填在第k个数的正下方(a[i+1,j])。
输入说明:
一行n,不需要判错n<=11
输出说明:
每行一个组n整数共n行
2016年02月18日 08点02分 1
level 2
输入样例:
3
输出样例 :
6 1 8 7 5 3 2 9 4
2016年02月18日 08点02分 2
level 2
真心求助Pascal源代码,百度得知的都是c的,跪求大神解答!
2016年02月18日 08点02分 3
level 11
这不是15年noip复赛提高组d1t1么
2016年02月18日 08点02分 4
能将源代码给我发一下吗?
2016年02月18日 08点02分
@伊冯双鱼座 手机里没有 当时写的时候感觉方法也不好 这个直接模拟就行了用一对临时变量记录上一次填写的位置
2016年02月18日 08点02分
回复 myetyet :我身边的同学,用pascal的都几乎做不出
2016年02月18日 08点02分
level 1
无意挖坟,实在想找苏州noi网站
2023年03月01日 11点03分 5
1