昨天做了一道關於蛇形矩陣的演算法題,覺得有點意思,下面記錄一下我實現的過程。
我的做法是建立乙個動態二維陣列,然後一層一層往內填數字:如上圖,先是1-3,4-6,7-9,10-12。這是第一層,然後記錄層數,一層層迴圈即可。但是在我除錯的時候發現,如果是奇數行,最後中間那個數會沒有被賦值,所以在**最後加了個判斷。
#include
#include
using
std::cin;
using
std::cout;
using
std::endl;
int **get_snack_arr(int n,int
floor);
int main(int argc, char
const *argv)
cout
return0;}
int **get_snack_arr(int n,int
floor)
if(n%2!=0)
snack_arr[n/2][n/2]=num++;
return snack_arr;
}...
Python實現蛇形矩陣
def matrix n 生成 n n 0矩陣 l 0 for i in range n for j in range n 設定邊界條件 right false left false down true up false 設定邊界 boundright n boundleft 0 boundbott...
C 分別實現螺旋矩陣 回形矩陣 蛇形矩陣
1 螺旋矩陣 題目描述 輸入n,試列印輸出n n的 螺旋矩陣 每個元素佔4位場寬 輸入例如n 7,矩陣如下圖 輸出 原始碼 include include using namespace std 螺旋矩陣 intmain int cnt 1 int x 0,y 0 int dx 0,dy 1 whi...
華為OJ題庫 C 實現蛇形矩陣
題目說明蛇形矩陣是由1開始的自然數依次排列成的乙個矩陣上三角形。樣例輸入 5樣例輸出 1 3 6 10 15 2 5 9 14 4 8 13 7 12 11知識點陣列 執行時間限制 10m記憶體限制 128輸入 輸入正整數n n不大於100 輸出輸出乙個n行的蛇形矩陣。樣例輸入 4樣例輸出 1 3 ...