首页 > 试题广场 >

#include using name...

[填空题]
#include <iostream>

using namespace std;

int fun(int n, int fromPos, int toPos) {
    int t, tot;
    if (n == 0)
        return 0;
    for (t = 1; t <= 3; t++)
        if (t != fromPos && t != toPos)
            break;
    tot = 0;
    tot += fun(n - 1, fromPos, t);
    tot++;
    tot += fun(n - 1, t, toPos);
    return tot;
}

int main( ) {
    int n;
    cin >> n;
    cout << fun(n, 1, 3) << endl;
    return 0;
}

输入:5
输出:1

汉诺塔
n个盘
ans=2^n-1
发表于 2019-10-18 14:44:50 回复(0)