因為是二維矩陣,所以可使用「(x, y) 座標」的方式來解題,定義左上角座標為 (0, 0),往右 x 增加,往下 y 增加。
因為矩陣內的數字會「轉彎」,所以要定義座標系統中的「四個端點」,當數字碰到端點時,就表示要轉彎,
四個端點所需要的座標為 x、y 的起始點 ( 預設為 0,0 ),以及 x、y 座標的末端點 ( 預設為矩陣長度 ),
起始點會隨著數字的變化而變大 ( 例如原本是 0,會逐漸變成 1、2... ),
末端點會隨著數字的變化而變小 ( 例如原本是 5,會逐漸變成 4、3... )。
了解原理後,透過 for 迴圈和 if 判斷式,最後再搭配字串的格式化,就能印出螺旋矩陣的結果。
解答:https://steam.oxxostudio.tw/category/python/zerojudge/a417.html