語法書 / AA 競程語法書 下冊 / 第十三單元 / 螺旋走訪(延伸知識)

13.10 螺旋走訪(延伸知識)

從正中央出發、一圈一圈往外繞——這是數字龍捲風(APCS 2017 年 3 月中級)的走法:N \times N 的陣列(N 為奇數),從正中間開始以順時針旋轉的方式走訪每個元素恰好一次,給定起始方向(0 左、1 上、2 右、3 下),依走訪順序輸出所有數字(不空白)。

觀察走法:先走 1 步、轉、走 1 步、轉、走 2 步、轉、走 2 步、轉、走 3 步……步長 1, 1, 2, 2, 3, 3, \dots,每段走完右轉一次,最後一段可能走不滿就結束。題目的方向編號 0 左、1 上、2 右、3 下本身就是順時針,所以右轉還是 (dir + 1) % 4:

登入後即可閱讀完整內容

語法書免費開放給所有 AACPOJ 帳號,註冊只要一分鐘。