本題比較複雜的地方是因為題目的結構是蜂巢狀,但是收資料的時候是採正方形的方式。但是可以理解為:右上的時候x和y值的變化為 (0, -1)、右邊的時候為 (1, 0)、右下的時候為 (1, 1)、左下的時候為 (0, 1)、左邊的時候為 (-1, 0)、左上的時候為 (-1, -1)。如果不理解的話可以拿範例一的資料用畫的方式畫畫看就會大概知道這個概念。需要注意的是每次行走時都需要判斷這樣子走會不會超出陣列的邊界。輸出次數的部分可以使用Map來存已經出現過的字元。
範例程式碼