問題描述
給定一個 N*N 的二維陣列,其中 N 是奇數,我們可以從正中間的位置開始,以順時 針旋轉的方式走訪每個陣列元素恰好一次。對於給定的陣列內容與起始方向,請輸出 走訪順序之內容。下面的例子顯示了 N=5 且第一步往左的走訪順序:
依此順序輸出陣列內容則可以得到「9123857324243421496834621」。 類似地,如果是第一步向上,則走訪順序如下:
依此順序輸出陣列內容則可以得到「9385732124214968346214243」。
評分說明
輸入包含若干筆測試資料,每一筆測試資料的執行時間限制(time limit)均為 1 秒,依 正確通過測資筆數給分。其中:
第 1 子題組 20 分,3 ≤ N ≤ 5,且起始方向均為向左。 第 2 子題組 80 分,3 ≤ N ≤ 49,起始方向無限定。
輸入第一行是整數 N,N 為奇數且不小於 3。第二行是一個 0~3 的整數代表起始方向, 其中 0 代表左、1 代表上、2 代表右、3 代表下。第三行開始 N 行是陣列內容,順序 是由上而下,由左至右,陣列的內容為 0~9 的整數,同一行數字中間以一個空白間隔。
請輸出走訪順序的陣列內容,該答案會是一連串的數字,數字之間不要輸出空白,結 尾有換行符號。
範例一:輸入 5 0 3 4 2 1 4 4 2 3 8 9 2 1 9 5 6 4 2 3 7 8 1 2 6 4 3 範例二:輸入 3 1 4 1 2 3 0 5 6 7 8
範例一:正確輸出 9123857324243421496834621 範例二:正確輸出 012587634
題有多種處理方式,其中之一是觀察每次轉向與走的步數。例如,起始方向是向 左時,前幾步的走法是:左 1、上 1、右 2、下 2、左 3、上 3、……一直到出界為止。
編號 | 身分 | 題目 | 主題 | 人氣 | 發表日期 |
沒有發現任何「解題報告」 |