1 条题解

  • 0
    @ 2024-12-24 9:14:33

    C :

    #include <stdio.h>
    int fib(int n){
        if(n<=2) return 1;
        return fib(n-1)+fib(n-2);
    }
    int main(){
        int n, m;
        scanf("%d", &n);
        while(n--){
            scanf("%d", &m);
            printf("%d\n", fib(m));
        }
        return 0;
    }
    
    

    C++ :

    #include<iostream>
    using namespace std;
    int main(){
    	int m;
    	cin>>m;
    	while(m--){
    		int n,i,a[21]={0};
    		for(i=1;i<21;i++){
    			if(i==1 || i==2)
    				a[i]=1;
    			else
    				a[i]=a[i-1]+a[i-2];
    		}
    		cin>>n;
    		cout<<a[n]<<endl;
    	}
    }
    

    Java :

    import java.util.Scanner;
    public class Main
    {
    	public static void main(String[] args)
    	{
    		Scanner sc=new Scanner(System.in);
    		int m=sc.nextInt();
    		while(m-->0)
    		{
    			int num1=1,num2=1,result=0;
    			int n=sc.nextInt();
    			if(n>=3){
    				for(int Fib=3;Fib<=n;Fib++){
    					result=num1+num2;
    					num2=num1;
    					num1=result;
    				}
    				System.out.println(result);
    			}else{
    				System.out.println("1");
    			}
    		}
    	}
    }
    
    • 1

    信息

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