1 条题解

  • 0
    @ 2023-7-5 12:27:04
    #include <bits/stdc++.h>
    using namespace std;
    int x, y, z;
    //第i个月的成虫数量,第i个月的新产生的卵的数量
    long long f[55], g[55];
    int main()
    {
        cin >> x >> y >> z;
        f[0] = 0, g[0] = 0;
        f[1] = 1, g[1] = 0;
        for (int i = 2; i <= z + 1; i++)
        {
            // 2个月前的新卵,成长为这个月的成虫
            f[i] = f[i - 1] + g[i - 2];
            // x个月的成虫,这个月每对成虫产y对卵
            if (i >= x)
                g[i] = f[i - x] * y;
        }
        cout << f[z + 1] << endl;
        return 0;
    }
    
    • 1

    信息

    ID
    531
    时间
    1000ms
    内存
    128MiB
    难度
    3
    标签
    (无)
    递交数
    48
    已通过
    25
    上传者