top1编程
← 返回题目
题解

【入门】银行存款问题

1 条题解

  • 0
    @ 2026-7-31 15:25:39

    解题思路

    亮亮把 n 元存 m 年,不同存款年限利率不同,到期后拿回本金加利息。

    利率表:

    • 1 年期:3.25%
    • 2 年期:3.75%
    • 3、4 年期:4.25%
    • 5 年及以上:4.75%

    思路:

    1. 根据 m 判断用哪个利率
    2. 利息 = 利率 × 本金 × 年限
    3. 本息 = 本金 + 利息 = n + 利率 × n × m
    4. 保留 1 位小数

    举例:存 1000 元 5 年

    • 利率 4.75%
    • 本息 = 1000 + 0.0475 × 1000 × 5 = 1000 + 237.5 = 1237.5

    参考代码

    #include <iostream>
    #include <iomanip>
    using namespace std;
    
    int main() {
        int n, m;
        cin >> n >> m;
    
        if (m == 1) {
            cout << fixed << setprecision(1) << (0.0325 * n * m + n);
        } else if (m == 2) {
            cout << fixed << setprecision(1) << (0.0375 * n * m + n);
        } else if (m == 3 || m == 4) {
            cout << fixed << setprecision(1) << (0.0425 * n * m + n);
        } else {
            cout << fixed << setprecision(1) << (0.0475 * n * m + n);
        }
        return 0;
    }
    

    复杂度分析

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