杭电ACM2044,求解释哪里错了

2024-12-02 03:18:29
推荐回答(2个)
回答1:

确实,要用__int64。AC的代码供您参考:
#include
int main()
{
int n,i,a,b;
__int64 f[60]={1,1};
for(i=2;i<50;i++)
f[i]=f[i-2]+f[i-1]; // 这里先计算出整个F数组,下面不用每个测试用例都循环
while(scanf("%d", &n)!=EOF)
{
for(i=0;i {
scanf("%d%d",&a,&b);
printf("%I64d\n",f[b-a]);// 这里
}
}
return 0;
}

回答2:

要用int64。