魔方矩陣
輸入一奇數,要求產生對應的魔方矩陣。
解題思路:魔方矩陣是指這樣的二維矩陣,矩陣的每一行、每一列,主對角線、副對角線上所有元素的和均相等。假設矩陣的維數是N*N,其中N為奇數,放置元素的步驟如下:
首先將第一個元素放在第一行正中間的位置;其次,如果當前放置的元素是N的倍數,則下一個數放在當前位置的正下方,如果不是N的位置,放置在當前位置的右上角。
放置元素時,將二維矩陣看成是左右相接,上下相接,可以通過對N取餘實現。參考程式碼如下:
#include <stdio.h>
#define N 5
//magic matrix
int main()
{
int i,j;
int num;
int a[N][N];
i=0;j=N/2; //initial position
for(num=1;num<=N*N;num++)
{
a[i][j]=num;
if(num%N) //右上角
{
i=(i-1+N)%N;
j=(j+1)%N;
}
else //正下方
{
i=(i+1)%N;
}
}
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
printf("%3d",a[i][j]);
putchar('\n');
}
return 0;
}
相關文章
- C++12. 魔方陣C++
- 生成螺旋矩陣(方陣、矩陣)矩陣
- 鄰接矩陣、度矩陣矩陣
- 巨大的矩陣(矩陣加速)矩陣
- 奇異矩陣,非奇異矩陣,偽逆矩陣矩陣
- 矩陣矩陣
- 資料結構:陣列,稀疏矩陣,矩陣的壓縮。應用:矩陣的轉置,矩陣相乘資料結構陣列矩陣
- 3D圖形:矩陣的行列式,矩陣的逆、正交矩陣、齊次矩陣3D矩陣
- 矩陣中最大的二維矩陣矩陣
- 求任意矩陣的伴隨矩陣矩陣
- 機器學習中的矩陣向量求導(五) 矩陣對矩陣的求導機器學習矩陣求導
- 矩陣和陣列矩陣陣列
- 理解矩陣矩陣
- 矩陣相乘矩陣
- 矩陣分解矩陣
- 稀疏矩陣矩陣
- Numpy 矩陣矩陣
- 穿越矩陣矩陣
- 混淆矩陣矩陣
- 海浪矩陣矩陣
- 8.6 矩陣?矩陣
- 螺旋矩陣矩陣
- 找矩陣矩陣
- 矩陣乘法矩陣
- 快手矩陣管理平臺,矩陣管理有方法矩陣
- Wannafly模擬賽 矩陣 二維矩陣hash矩陣
- 矩陣:如何使用矩陣操作進行 PageRank 計算?矩陣
- 演算法學習:矩陣快速冪/矩陣加速演算法矩陣
- 視訊矩陣矩陣
- 高斯消除矩陣矩陣
- 矩陣轉置矩陣
- 矩陣樹定理矩陣
- 矩陣消除遊戲矩陣遊戲
- 08:矩陣加法矩陣
- 旋轉矩陣矩陣
- 矩陣旋轉矩陣
- 矩陣連乘矩陣
- 關聯矩陣矩陣