题解
2025-05-01 07:59:52
发布于:浙江
0阅读
0回复
0点赞
思路:先特判n为1和2的情况,之后用递归就行。已知=2*,所以递归式为:return 2*m(n-1)+m(n-2)
其中m()为递归函数。由于有多个测试样例,所以直接用for循环就好了。代码:
#include <bits/stdc++.h>
using namespace std;
long long m(int n){
if(n==1){
return 1;
}else if(n==2){
return 2;
}
return 2*m(n-1)+m(n-2);//递归
}
int main(){
int a;
cin >> a;
for(int i=1;i<=a;i++){
int n;
cin >>n;
cout << m(n)<<endl;
}
return 0;
}
这里空空如也
有帮助,赞一个