螺旋陣的思考

2021-09-05 12:49:44 字數 875 閱讀 1883

問題:

3階  

1 8 7

2 9 6

3 4 5 

推至n階

解題思路:

第一種硬模擬:從外層逐層向內

#include#includeusing namespace std;

const int n=105;

int a[n][n];

int cnt=0;

int n;

int main()//左->下

for(int j=i;j<=n-i;j++)//下->右

for(int j=n+1-i;j>=i+1;j--)//右->上

for(int j=n+1-i;j>=i+1;j--)//上->左

}if(n%2==1)

for(int i=1;i<=n;i++)

printf("\n");

}system("pause");

return 0;

}

第二種帶技巧的模擬:(來自演算法與設計第三版呂國英)利用陣列b[2]來轉移方向

藍橋杯 三角螺旋陣 遞迴

方陣的主對角線之上稱為 上三角 請你設計乙個用於填充n階方陣的上三角區域的程式。填充的規則是 使用1,2,3 的自然數列,從左上角開始,按照順時針方向螺旋填充。例如 當n 3時,輸出 1 2 3 6 4 5當n 4時,輸出 1 2 3 4 9 10 5 8 6 7當n 5時,輸出 1 2 3 4 5...

YTU 1328 三角螺旋陣

方陣的主對角線之上稱為 上三角 請你設計乙個用於填充n階方陣的上三角區域的程式。填充的規則是 使用1,2,3 的自然數列,從左上角開始,按照順時針方向螺旋填充。程式執行時,從標準輸入獲得整數n 3 20 程式輸出 方陣的上三角部分。要求格式 每個資料寬度為4,右對齊。copy 31 2 3 6 4 ...

演算法競賽練習題 三角螺旋陣

方陣的主對角線之上稱為 上三角 請你設計乙個用於填充n階方陣的上三角區域的程式。填充的規則是 使用1,2,3 的自然數列,從左上角開始,按照順時針方向螺旋填充。例如 當n 3時,輸出 1 2 3 6 4 5當n 4時,輸出 1 2 3 4 9 10 5 8 6 7當n 5時,輸出 1 2 3 4 5...