騰訊2016筆試題(螺旋矩陣)

2021-07-11 07:57:41 字數 897 閱讀 4980

//問題描述

/*輸入乙個整數n,輸出n階方陣,也即n*n的矩陣

如:n=4,輸出如下

1  2  3  4

12 13 14  5

11 16 15  6

10  9  8  7

可以看成是數列一層一層往裡增加

最外面一層可以分為四段

1  2  3      ........a

4  5  6      ........b

7  8  9      ........c

10 11 12     ........d

同理,裡面一層分為四段

1314

1516

很容易想到,如果n為奇數,則最裡面一層只有乙個數,因此,如果n為奇數,則上面分層輸出值進行到

裡面倒數第二層,最後一層單獨輸出

在一層一層往裡走的同時,行、列、邊界均有發生變化

依次輸出a、b、c、d*/

#include using namespace std;

int main()

int num = 1;

int start = 0;

int end = n-1; //第i層每一段輸出n-i個

for (int layer = 0; layer <= n / 2; layer++)

//如果n為奇數,則輸出最裡面乙個

if (n % 2 == 1)

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

cout << endl;

}//釋放記憶體

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

delete data;

} return 0;

}

京東2016筆試題

我的結果,深度搜尋。考試當場小毛病沒改出來16 正確率 後來發現橫縱座標寫反了。醉了。以後再也不用xy做座標了,用row col的話就不會想歪了。include include using namespace std int dfs vector map,int x,int y,int max,in...

京東2016筆試題

2016.年4月8日7點到9點考題,兩個程式設計題,就做出這乙個了,第二個沒時間了,感覺第二個程式設計題還好,不是很難 題目大致意思就是給定乙個8 8的棋盤,給定兩個點a,b,求從a到b需要走的最短步數,並列印最短路徑。走的每一步的方向可以為左 l 右 r 上 u 下 d 左下 ld 左上 lu 右...

騰訊筆試題 蛇形矩陣

題目 蛇形矩陣,是由1開始的自然數一次排列成的n n的正方形矩陣,數字依次由外而內的遞增,如下面例項 n 3時 1 2 3 8 9 4 7 6 5 n 6時 1 2 3 4 5 6 20 21 22 23 24 7 19 32 33 34 25 8 18 31 36 35 26 9 17 30 29...