#GESP12. 循环累加求和

循环累加求和

题目描述:

小杨想计算一个特殊的累加和:从数字 s 开始,按照“加 k → 加 k → 减 m”的循环规则重复计算,直到累加结果第一次大于 target 为止。请帮他计算,此时一共执行了多少次“加/减”操作(每次“加 k”或“减 m”都算一次操作)。

输入格式:

输入共四行,分别包含四个正整数:

  • 第一行:s(初始数字,1 ≤ s ≤ 100)。

  • 第二行:k(每次加的数值,1 ≤ k ≤ 20)。

  • 第三行:m(每次减的数值,1 ≤ m ≤ 10)。

  • 第四行:target(目标数值,10 ≤ target ≤ 500)。

输出格式:

输出一行,包含一个整数,表示第一次让结果大于 target 时的总操作次数。

样例:

5
3
2
20
11

样例说明1: 初始值 5,循环操作:

  1. 加 3 → 8(≤ 20,次数 1)。

  2. 加 3 → 11(≤ 20,次数 2)。

  3. 减 2 → 9(≤ 20,次数 3)。

  4. 加 3 → 12(≤ 20,次数 4)。

  5. 加 3 → 15(≤ 20,次数 5)。

  6. 减 2 → 13(≤ 20,次数 6)。

  7. 加 3 → 16(≤ 20,次数 7)。

  8. 加 3 → 19(≤ 20,次数 8)。

  9. 减 2 → 17(≤ 20,次数 9)。

  10. 加 3 → 20(≤ 20,次数 10)。

  11. 加 3 → 23(> 20,次数 11)→ 停止,总次数 11。