top1编程
← 返回题目
题解

「一本通 1.3 例 5」weight

1 条题解

  • 0
    @ 2026-7-29 0:06:28
    #include <bits/stdc++.h>
    using namespace std;
    
    int y, t, k;       // 目标体重y,总天数t,衰减率k%
    double x, w;        // 当前体重x(可能变为小数),当天减重值w(每天减少k%)
    //比较时需要转为整数进行比较,最好用for而不是while,while可能会造成死循环
    int main() {
        cin >> x >> y >> t >> w >> k;
        for(int i = 1; i <= t; i++) {   // 枚举每一天
            x -= w;                     // 当天减少w克
            w *= (1 - 0.01 * k);        // 更新下一天的减重值(减少k%)
            if(int(x) <= y) {           // 若当前体重整数部分达到目标
                cout << i;              // 输出当前天数
                return 0;
            }
        }
        cout << "Failure";              // 所有天数耗尽仍未达标
        return 0;
    }
    
    • 1