1 条题解

  • 0
    @ 2025-10-12 19:39:22

    思路: 预处理出斐波那契数列的前 50 项,之后对于每个查询,直接通过数组下标获取结果,避免重复递推计算。

    #include <bits/stdc++.h>
    using namespace std;
    #define int long long
    void solve() {
        int f[55]; 
        // 预处理斐波那契数列前50项
        f[1] = 1;
        f[2] = 1;
        for(int i = 3; i <= 50; i++){  
            f[i] = f[i - 1] + f[i - 2];
        }
        int t; cin >> t;
        while (t--){
            int x;
            cin >> x;
            cout << f[x] << endl;
        }
    }
    
    signed main() {
        ios::sync_with_stdio(0);
        cin.tie(0);
        solve();
        return 0;
    }
    
    
    
    
    • 1

    信息

    ID
    480
    时间
    1000ms
    内存
    256MiB
    难度
    8
    标签
    (无)
    递交数
    270
    已通过
    34
    上传者