小心陷阱 (APCS 2025-06 初級)

1.0s 256M

在一維數線上進行一場模擬遊戲,規則如下:

  1. 初始位置為 \(0\)。
  2. 初始生命值為 \(k\)。
  3. 當前生命值為 \(v\) 時,角色會往右跳 \(v\) 格,也就是從位置 \(p\) 移動到 \(p + v\)。
  4. 每次移動後,如果落在 \(x_1\) 或 \(x_2\) 的倍數上,會損失生命值:
    • 若落在 \(x_1\) 的倍數,生命值減少 \(y_1\)。
    • 若落在 \(x_2\) 的倍數,生命值減少 \(y_2\)。
    • 若同時是 \(x_1\) 和 \(x_2\) 的倍數,生命值總共減少 \(y_1 + y_2\)。
  5. 當生命值小於等於 \(0\) 時,遊戲結束,輸出當前所在的位置。

輸入格式

第一行有一個整數 \(k\),表示初始生命值。

第二行有兩個整數 \(x_1\) 與 \(y_1\)。

第三行有兩個整數 \(x_2\) 與 \(y_2\)。

限制

  • \(1 \le k \le 20\)
  • \(1 \le x_1, x_2 \le 10\)
  • \(1 \le y_1, y_2 \le 20\)

輸出格式

輸出遊戲結束時所在的位置。

評分說明

每一筆測試資料的執行時間限制均為 \(1\) 秒,依正確通過的測試資料筆數給分。其中:

  • 第 1 子題組(\(40\) 分):\(x_1 = 3\)、\(x_2 = 4\)、\(y_1 = y_2 = k\)。
  • 第 2 子題組(\(60\) 分):無額外限制。

範例輸入 1

1
3 1
4 1

範例輸出 1

3

(說明)生命值 \(1\),每次往右跳 \(1\) 格。位置 \(1\)、\(2\) 都不是 \(3\) 或 \(4\) 的倍數;跳到位置 \(3\) 時是 \(3\) 的倍數,生命值減 \(1\) 變為 \(0\),遊戲結束,位置為 \(3\)。

範例輸入 2

7
3 2
2 3

範例輸出 2

18

(說明)從 \(0\) 跳 \(7\) 到 \(7\)(非倍數);跳 \(7\) 到 \(14\)(\(2\) 的倍數,減 \(3\) → 生命 \(4\));跳 \(4\) 到 \(18\)(同時是 \(3\)、\(2\) 的倍數,減 \(2 + 3 = 5\) → 生命 \(-1\)),結束於位置 \(18\)。

題目來源

APCS 2025 年 6 月實作題第 1 題。

題目頁說明

快速鍵

主要功能

  • 範例測試 — 執行題目附帶的範例測資並自動比對預期輸出。
  • 自訂測試 — 自己貼 stdin 執行程式。可勾選「與預期輸出比對 (diff)」做行對行比對。
  • 模板 — 貼上你在個人資料設定的預設程式碼模板。
  • 協作 — 與其他同學共筆編輯這題的程式碼。
  • 自動草稿 — 編輯器內容每 1.5 秒自動存到瀏覽器(per 帳號 / 題目 / 語言)。
  • 提交 — 把程式碼交給 judge 評測,回傳 AC / WA / TLE 等結果。

限制

  • 程式碼最多 65,536 字元
  • 自訂測試 stdin 與預期輸出各最多 1 MB (約 100 萬字元)
  • 自訂測試與範例測試共用一個沙箱,每人約 3 秒 1 次 (範例測試 1 秒 1 次)
  • 自訂測試與範例測試都有 15 秒 牆鐘上限(正式評測仍依題目原本時限)
  • 互動題不提供自訂測試(無法模擬與 judge 互動)。
  • 提交評測本身沒有 rate limit,但同題短時間內多次提交會被視為刷分。