1 1 2 3 5 8算这个数列前n项和。结果int用时35ms。longlong用时15ms。就一个名称为什么差距这么大
#include<stdio.h>
#include<string.h>
int f[50];//int用时35ms
int main()
{
int i, j, k;
f[0] = 0, f[1] = 1;
for(i = 2; i <= 41; i ++)
f[i] = f[i - 1] + f[i - 2];
while(scanf("%d", &k) == 1)
printf("%d\n", f[k + 1] - f[k - 1] - 1 + f[k + 1]);
return 0;
}
#include<stdio.h>
#include<string.h>
long long int f[50];//longlong用时15ms
int main()
{
int i, j, k,m;
f[0] = 0, f[1] = 1;
for(i = 2; i <= 41; i ++)
f[i] = f[i - 1] + f[i - 2];
while(scanf("%d", &k) == 1)
printf("%d\n", f[k + 1] - f[k - 1] - 1 + f[k + 1]);
return 0;
}