#include <iostream> using namespace std; int ans = 0; void calc(char a, char b, char c, int n) { if (n == 1) { ans += 2;//盘子剩下一个情况就是从a->b->c return; } calc('a', 'b', 'c', n - 1);// 前n-1个盘子,从a->b->c ans++;//最后一个盘子从a->b calc('c', 'b', 'a', n - 1);//前n-1个盘子,从c->b->a ans++;//最后一个盘子从b->c calc('a', 'b', 'c', n - 1);//对于这n-1个盘子,进行同样的操作 } int main() { int n; while(cin>>n) { ans = 0; calc('a', 'b', 'c',n); cout << ans << endl; } }