奇數魔方陣(經典演算法)

2021-10-02 13:58:13 字數 801 閱讀 7715

說明

將1到n(為奇數)的數字排列在nxn的方陣上,且各行、各列與各對角線的和必須相同,如下所示:

解法一般程式語言的陣列索引多由0開始,為了計算方便,我們利用索引1到n的部份。

第乙個數字放在第一行第一列的正**。

在計算向右(左)上或向下時,我們可以將索引值除以n值,如果得到餘數為1就向下,否則就往右(左)上。

若上乙個數在第n列,則下乙個數放在行數為i-1,列數為1的位置。

(i指行數,j指列數)

如下圖所示:

)//當數在第0行時

if(i ==0)

i = n;

if(j > n)

//當數在最後一行n時

j =1;

square[i]

[j]= key;

}for

(i =

1; i <= n; i++

)return0;

}

奇數魔方陣

魔方陣,古代又稱 縱橫圖 是指組成元素為自然數1 2 n的平方的n n的方陣,其中每個元素值都不相等,且每行 每列以及主 副對角線上各n個元素之和都相等。階數大於等於3。如3 3的魔方陣 8 1 6 3 5 7 4 9 2 奇數魔方陣的排列規律如下 1 將1放在第一行中間一列 2 從2開始直到n n...

5奇數魔方陣

說明 將1 到n 為奇數 的數字排列在nxn的方陣上,且各行 各列與各對角線的和必須相同,如下所 示 解法 填魔術方陣的方法以奇數最為簡單,第乙個數字放在第一行第一列的正 然後向右 左 上 填,如果右 左 上已有數字,則向下填,如下圖所示 一般程式語言的陣列索引多由0開始,為了計算方便,我們利用索引...

acm奇數魔方陣

輸入檔案 input.txt 輸出檔案 output.txt 魔方矩陣是乙個n n 奇數矩陣,其中 n 2個元素分別是 1,2,3,4,5 n 2 魔方矩陣的特點是 任意一行 任意一列以及主副對角線的所有數之和均相等,且都等於 n n 2 1 2 如下圖所示的三階魔方矩陣 8 1635 7492 小...