我的ACM之路——hdoj2063

来源:互联网 发布:json push remove 编辑:程序博客网 时间:2024/04/28 07:29

汉诺 III

跟经典的汉诺塔问题差不多,由于每一步只能从中间移走或者移到中间。


  O             |             |

 OO           |             |
OOO         |             |

可以看出  han(n)=han(n-1)+1+han(n-1)+1+han(n-1)


代码:

/***
**acm@./2064.c
**--by_Ncy
*/
#include <stdio.h>

long long han(int n)
{
     if( n ==1){
        return 2;
     }else {
        return 3*han(n-1)+2;
     }
}

int main (int argc,char **argv)
{
    int n;
    while (scanf("%d",&n) != EOF){
        printf ("%lld\n",han(n));
    }
    return 0;
}


0 0
原创粉丝点击