1 条题解

  • 0
    @ 2025-4-12 21:41:02

    C :

    #include<stdio.h>
    int main()
    {
        int i,a[30],n,b;
        a[0]=1;
        a[1]=1;
        for(i=2;i<20;i++)
            a[i]=a[i-1]+a[i-2];
        scanf("%d",&n);
        while(n--)
        {
            scanf("%d",&b);
            printf("%d\n",a[b-1]);
        } return 0;
    }
    
    

    C++ :

    #include<iostream>
    #include<cstdio>
    #include<iostream>
    
    using namespace std;
    
    int a[50];
    
    int dg(int n){
        if(n==1||n==2)
            a[n]=1;
        else if(a[n] == -1)
            a[n] = dg(n-1) + dg(n-2);
        return a[n];
    }
    
    int main(){
        fill(a,a+50,-1);
        int n;
        while(cin>>n){
            while(n--){
                int m;
                cin>>m;
                cout<<dg(m)<<endl;
            }
        }
        return 0;
    }
    
    
    • 1

    信息

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