扎米亚京


私信TA

用户名:15332373513

访问量:2885

签 名:

等  级
排  名 27969
经  验 544
参赛次数 1
文章发表 3
年  龄 0
在职情况 学生
学  校 西安工业大学北方信息工程学院
专  业

  自我简介:

解题思路:
本体乍一看,跟斐波那契解体思路一样,但是,存在着些许差别,区别在于:斐波那契额数列相加的是前两项,而本题却不同,根据规律显示,本题相加的是第n-1项和第n-3项。




注意事项:

很郁闷,这个解法在dev,运行完全正确,但是在网页提交却是答案错误。并非运行时间超时,也并非代码超长。



参考代码:


//代码正确,却在网页未通过

#include <iostream>
using namespace std; 
int main(){
	int a[1001]={0,1,2,3,4},b[1001];
	int n,i;
	for(i=1;n!=0;i++){
		cin>>n;
		b[i]=n;
	}
	for(i=1;b[i]!=0;i++){
		if(b[i]>=5)
			a[b[i]]=a[b[i]-1]+a[b[i]-3];
		cout<<a[b[i]]<<endl;
	}
	return 0;
}

//AC代码:

    

#include <iostream>
using namespace std; 
int main(int argc, char** argv) {
int n,i;
int f[56]={0,1,2,3};
for(i=4;i<56;i++){
f[i]=f[i-1]+f[i-3];
}
while(cin>>n&&n!=0){
cout<<f[n]<<endl;
}
return 0;
}


 

0.0分

0 人评分

  评论区

  • «
  • »