#include<iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int a[n];
a[1]=0;a[2]=1;a[3]=1;
for(int i=4;i<=n;i++)
a[i]=a[i-3]+2*a[i-2]+a[i-1];
cout<<a[n];
return 0;
}...怀疑以前的自己是不是有什么问题
数组居然不加范围
#include<iostream>
using namespace std;
int main()
{
int a[]={0,1,1}, n, b=4;
cin>>n;
while(b<=n)
{
a[b-1]=a[b-4]+2*a[b-3]+a[b-2];
b++;
}
cout<<a[n-1]<<endl;
}不通过
您的代码已保存
段错误:您的程序发生段错误,可能是数组越界,堆栈溢出(比如,递归调用层数太多)等情况引起
case通过率为40.00%
?
(其他人都用的递归
确实这样时间不变还能节约空间
只不过我完全没有想到
大约我的科技树漏了很多东西)



京公网安备 11010502036488号