HDU 1996汉诺塔VI
题意:问n个盘子的合法排列方式有几种。
这题虽然叫汉诺塔但是感觉和汉诺塔没什么关系,水题一枚
盘子从大到小依次选择位置,以保证合法性;每个盘子有三个可选位置,f[n]=f[n-1]*3;
#include<stdio.h> int main() { long long f[30]; int i,n,t; for(i=2,f[1]=3;i<30;i++) f[i]=f[i-1]*3; scanf("%d",&t); for(i=0;i<t;i++) { scanf("%d",&n); printf("%I64d\n",f[n]); } return 0; }