×
解除綁定,重新設定系統帳號的密碼
您的系統帳號 ID:
您的系統帳號:
您的帳號暱稱:
設定新密碼:
設定新密碼:
×
請輸入要加入的「課程代碼」
請向開設課程的使用者索取「課程代碼」
分類題庫
解題動態
排行榜
討論區
競賽區
登入
註冊
發表新討論
解題報告
#37578: 解題思路(含一些小技巧)
edoctopus322@gmail.com
(Moon Jam)
學校 : 臺北市立成功高級中學
編號 : 167591
×
傳送站內訊息
傳給:
主題:
內容:
來源 : [36.225.19.60]
最後登入時間 :
2023-12-23 13:47:18
c292.
APCS2017-0304-3數字龍捲風
--
2017年
3月
APCS
| From: [36.225.13.17] | 發表日期 : 2023-09-17 21:18
完整題解:
https://moon-jam.me/zerojudge_c292/
解題思路:
這題的提示真的太明顯,實在有點讓人來不及思考就把答案講出來了,正式考試應該沒有提示吧🤔
總之就是按照提示說的,每經過兩次不同方向移動就會多走一步,這邊要注意一點,最後走的那一次不會多走一步(以3*3來說,走的步數會是1、1、2、2、2,而不是1、1、2、2、3),要記得注意這個狀況。
🌟因為是每經過兩次不同方向移動,這邊有一個小技巧,一開始把要走的步數設定成10,每次+5,要用的時候再除以10,寫起來會比較方便(或者是你可以用double一次增加0.5,使用時再轉換成int,但我比較不建議,雖然這題不會怎樣,但double能少用還是不要用,要不然如果太習慣,數字大了之後出現精度問題還要想辦法修正),另一點在移動的部分,可以開兩個陣列代表x移動方向跟y移動方向,然後依據目前方向代碼在陣列中索引移動方向(也可以開一個陣列同時兼顧x跟y,雖然很酷但其實省這一點點空間根本沒差,所以還是推薦開兩個陣列會比較方便),當然如果你要開四個if跟迴圈也是可以的。
小插曲:我意外發現這題最後不換行也可以過
ZeroJudge Forum