time limit: 1000ms
memory limit: 65536kb
submit
statistic
discuss
problem description
n×n的螺旋方陣當n=5和n=3時分別是如下的形式
請給出乙個程式,對於任意的輸入n(0<n<11),輸出按照上面規律所獲得的n×n的螺旋方陣。
input
輸入第一行為整數m(0<m<10),代表有m組輸入;
接下來是m行資料,每行輸入乙個n(0<n<11)。
output
按照輸入的次序,依次輸出每乙個n×n方陣(乙個方陣的同一行資料之間以'\t'分隔)
兩個輸出方陣之間輸出乙個空行。
example input
1example output4
1 2 3 4hint12 13 14 5
11 16 15 6
10 9 8 7
author
就是乙個簡單的搜尋題
由(0,0)位置開始,先向右開始搜尋,直到到邊界(邊界為座標超出範圍或則已被標記比如
12 34
1213 145
1116 156
109 87
這組數中
12 34
00 00
00 00
00 00
12 34
1213 145
110 06
109 87
搜尋到14時在向右map = 5,所以也在邊界上
搜尋到邊界時改變方向,向下再向左再向上直到搜尋到n*n就是搜尋完時退出dfs
-->|
|map[ ][ ]陣列用於標記是否標記,並記憶路徑。
dfs(x,y,add)中
x為橫座標,
y為縱座標
add為方向
原始碼如下:
#include #include #include #include #include #include using namespace std;
int ans;
int map[20][20];
int n;
void dfs(int x, int y, int add)
else
} else if(add == 1)
else
} else if(add == 2)
else
} else if(add == 3)
else }}
int main()
return 0;
}
螺旋方陣 sdut oj
time limit 1000ms memory limit 65536kb problem description 的螺旋方陣當n 5和n 3時分別是如下的形式 請給出乙個程式,對於任意的輸入 0 11 輸出按照上面規律所獲得的 的螺旋方陣。input 輸入第一行為整數 0 10 代表有 組輸入 ...
SDUT 1295 螺旋方陣
的螺旋方陣當n 5和n 3時分別是如下的形式 請給出乙個程式,對於任意的輸入 0 11 輸出按照上面規律所獲得的 的螺旋方陣。input 輸入第一行為整數 0 10 代表有 組輸入 接下來是 行資料,每行輸入乙個 0 11 output 按照輸入的次序,依次輸出每乙個 方陣 乙個方陣的同一行資料之間...
PAT螺旋方陣
題目 所謂 螺旋方陣 是指對任意給定的nn n,將1到n nn times nn n的數字從左上角第1個格仔開始,按順時針螺旋方向順序填入n nn times nn n的方陣裡。本題要求構造這樣的螺旋方陣。輸入在一行中給出乙個正整數nn n 10 10 10 輸出n nn times nn n的螺旋...