设f(n)为需要的步数.
则有递推公式f(n) = 把n -1 个环套上 + 把n -2 个环拿下 + 把n -2 个环套上 + 1
#include <iostream>
#include <cstdio>
using namespace std;
int tb[35]={0,1,2}, n;
void init(){
for(int i = 3; i <= 30; ++i){
tb[i] = tb[i -1] + tb[i - 2] * 2 + 1;
}
}
int main(){
init();
int t;
scanf("%d", &t);
while(t--){
scanf("%d",&n);
printf("%d\n",tb[n]);
}
return 0;
}