竞赛讨论区 > 大佬们,为什么只对了2/3
头像
牛客675549066号
编辑于 2019-12-13 23:24
+ 关注

大佬们,为什么只对了2/3

#include<stdio.h>
int main()
{
    long long int k,t,i,n,a[100];
    scanf("%lld",&t);
    a[0]=0;
    a[1]=1;
    for(i=2;i<100;i+=2){	//定义斐波拉切数列
        a[i]=a[i-1]+a[i-2];
        a[i+1]=a[i]+a[i-1];
    }
    while(t--){
        k=1;				//每次重新定义k
        scanf("%lld",&n);
        if(n>0){
            for(i=0;;i++){	//判断是2的多少次方
                k*=2;
                if(k>n){
                    printf("%lld\n",a[i+1]);
                    break;
                }
            }
        }else printf("%lld",a[0]);
    }
    return 0;
}

😭

全部评论

(1) 回帖
加载中...
话题 回帖

等你来战

查看全部

热门推荐