top1编程
← 返回题目
题解

【入门】至少要买几瓶止咳糖浆?

1 条题解

  • 0
    @ 2026-7-31 14:33:23

    解题思路

    花花要喝 5 天的止咳糖浆,每天 3 次。不同年龄段每次的用量不同。要算最少买几瓶(每瓶 120 毫升)。

    思路:

    1. 按年龄定每次用量:
      • 10 岁以上:25 毫升/次
      • 7~10 岁:15 毫升/次
      • 3~6 岁:5 毫升/次
    2. 算 5 天总用量 = 每次用量 × 3 次 × 5 天
    3. 算瓶数 = 总用量 ÷ 120,如果除不尽要向上取整(多出来的部分也得买一瓶)

    为什么要向上取整? 比如总用量 150 毫升,150÷120 = 1.25,一瓶不够,必须买 2 瓶。

    举例 花花 5 岁:

    • 每次 5 毫升
    • 总用量 = 5×3×5 = 75 毫升
    • 75 < 120,买 1 瓶就够

    参考代码

    #include <iostream>
    using namespace std;
    
    int main() {
        int n, m, p;
        cin >> n;  // 年龄
    
        if (n >= 10) {
            m = 25 * 3 * 5;  // 25ml × 3次 × 5天
        } else if (n >= 7) {
            m = 15 * 3 * 5;
        } else if (n >= 3) {
            m = 5 * 3 * 5;
        }
    
        // 总用量 ÷ 120,不足一瓶按一瓶算
        if (m % 120 == 0) {
            p = m / 120;
        } else {
            p = m / 120 + 1;
        }
    
        cout << p << endl;
        return 0;
    }
    

    复杂度分析

    • 时间复杂度:O(1)
    • 空间复杂度:O(1)
    • 1