不一样的斐波那契
时间: 1ms 内存:128M
描述:
现在有一组斐波那契数列,给你一个整数m和n,你是否能求出 mf1 + mf2 + ......+ mfn 呢?试一试吧
输入:
整数m 与 n(0<m*n<=30)
输出:
运算后的结果
示例输入:
2 5
示例输出:
48
提示:
参考答案(内存最优[1120]):
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n,m,i,a[35]= {1,1};
long int sum=0,s[35],j,jg;
scanf("%d%d",&m,&n);
for(i=2;i<35;i++)
{
a[i]=a[i-1]+a[i-2];
}
for(i=0;i<n;i++){
jg=1;
for(j=0;j<a[i];j++){
jg*=m;
}
sum+=jg;
}
printf("%ld",sum);
return 0;
}
参考答案(时间最优[1]):
#include <stdio.h>
int main()
{
int a,b,c,d,m,n,he=0;
scanf("%d%d",&m,&n);
int x[n];
for(a=0;a<2;a++){
x[a]=1;
}
for(c=2;c<n;c++){
x[c]=x[c-1]+x[c-2];
}
for(b=0;b<n;b++){
int sum=1;
for(d=0;d<x[b];d++){
sum=sum*m;
}
he=he+sum;
}
printf("%d",he);
return 0;
}
题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。