#41515: C++詳解


toseanlin@gmail.com (Dr. SeanXD)

學校 : 康橋雙語學校
編號 : 158065
來源 : [24.147.249.5]
最後登入時間 :
2024-10-28 09:54:40
h660. 躲避球 (DodgeBall) -- TOI練習賽202203新手組第3題 | From: [220.136.82.217] | 發表日期 : 2024-08-03 10:20

每次紀錄新的 P 和 S 時,先宣告兩個變數 left 和 right,分別代表目前可以接球的左右邊界。

如果今天 P 沒有在 left 和 right 的範圍內,則不需要做任何動作。

如果今天 P 在範圍內,則要先判斷球速 S 是否超過可以承受的球速 V。如果 S <= V,代表可以接球,所以將 X 設定成 P。如果球速過快,則要判斷要往哪邊閃躲,如果今天 P >= X,代表球在右邊,所以要往左閃 X -= 15,這邊使用 >= 是因為題目有說如果 P == X 要往左閃,如果今天球在左邊就是往右閃 X += 15。

 

範例程式碼

 
ZeroJudge Forum