演算法競賽 3 3蛇形填數

2021-08-15 02:38:52 字數 782 閱讀 9045

在n*n方陣裡填入1,2,…,n*n,要求填成蛇形。例如n=4時方陣為

10 11 12 1

9 16 13 2

8 15 14 3

7 6 5 4

上面的方陣中,多餘的空格只是為了便於觀察規律,不必嚴格輸出。n≤8。

題目做完發現了幾個要注意的地方

1. 對二維陣列的初始化應該是a[maxn][maxn] = }或者直接使用memset函式

2.tot = a[x=0][y=n-1] = 1;之前錯寫成了

tot = 1;

tot = a[x=0][y=n-1];

導致tot初始化錯誤。

//

// 蛇形填數.c

//// created by 趙海博 on 2018/1/26.

//#include

//#include

int main()

};// memset(a,0,sizeof(a));

int x,y,n,tot = 0;

scanf("%d",&n);

tot = a[x=0][y=n-1] = 1;

while(tot!=n*n)

for(x=0;xfor(y=0;yprintf("%3d ",a[x][y]);

return

0;}

NYOJ 33 蛇形填數

類似數學中的矩陣,我們可以用乙個所謂的二維陣列來儲存題目中的方陣。此題不要求嚴格輸出格式!技巧 首先從第乙個數1開始依次填寫。設筆的座標為 x,y 一開始x 0,y n 1。還有就是需要進行 預判 即是否越界,以及如果繼續走下去會不會到達乙個已經填過的格仔。總的原則就是 先判斷,再移動。越界只需判斷...

NYOJ33 蛇形填數

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 在n n方陳裡填入1,2,n n,要求填成蛇形。例如n 4時方陳為 10 11 12 1 9 16 13 2 8 15 14 3 7 6 5 4 輸入直接輸入方陳的維數,即n的值。n 100 輸出輸出結果是蛇形方陳。樣例輸入 3...

nyoj33 蛇形填數

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 在n n方陳裡填入1,2,n n,要求填成蛇形。例如n 4時方陳為 10 11 12 1 9 16 13 2 8 15 14 3 7 6 5 4 輸入直接輸入方陳的維數,即n的值。n 100 輸出輸出結果是蛇形方陳。樣例輸入 3...