輸入一個 3x3 二維陣列代表地圖,其中包含 1 到 9 的數字,例如
1 4 5
2 3 6
9 8 7
數字標示走訪的順序,從數字 1 的位置開始走,只能往上下左右 (U,D,L,R) 四個方向移動,然後依序走到 2, 3, 4, … 的位置,直到走不下去為止。你的程式要輸出每次的移動方向。以這個例子來說,輸出會是
*DRURDDLL
其中 * 代表開始,D 代表先往下走 (從1走到2),接下來 R 代表往右走 (從2走到3),再接下來 U 代表向上走 (從3走到4),以此類推,直到走到 9 或是走不下去為止。
底下的例子,1 的位置在正中間,走到 7 就停了:
Input:
8 2 3
9 1 4
7 6 5
Output:
*URDDLL
下面的例子從一開始就走不下去:
Input:
8 1 3
6 5 4
7 9 2
Output:
*
注意:
(a) 二維陣列 map 故意開成 5x5 的大小,這樣處理邊界條件比較方便。此外, map 是 global (放在 main 外面),因此程式一開始執行的時候,map 的元素都會自動被清為 0。
由不重複的正整數1到9所組成的3x3地圖
每次移動方向所形成的字串, 並以*為字串的起始字元
NTHU5610
No. | Testdata Range | Score |
---|---|---|
1 | 0 | 100 |