towers-of-hanoi

    -3热度

    1回答

    鉴于这种方法的塔移动, public static String solve(int n, String start, String middle, String end) 我想返回的动作的次数。我可以在某种程度上与此代码获得此: public static String solve(int n, String start, String middle, String end) {

    1热度

    1回答

    有人可以告诉我为什么我不断得到4当n = 2和11当n = 3?我应该分别得到3分和7分,但是没有发生,也很令人沮丧。 此举是一个类级别的静态int变量 public String solve(int n, String start, String middle, String end) { if (n == 1) { move++; return Intege

    0热度

    1回答

    我发现了解决河内塔以下代码。代码工作正常! 但我不明白到底发生了什么事。 import Data.Bits hanoi :: Int -> [(Int, Int)] hanoi n = map (\x -> ((x .&. (x-1)) `mod` 3, ((x .|. (x-1)) + 1) `mod` 3)) [1..shift 1 n] main = print $ hanoi 5

    2热度

    1回答

    我发现这个功能: def hanoi(pegs, start, target, n): assert len(pegs[start]) >= n, 'not enough disks on peg' if n == 1: pegs[target].append(pegs[start].pop()) print '%i -> %i: %s' % (star

    0热度

    1回答

    我正在做着名的游戏“河内塔”的练习,当我运行我的代码时出现错误。但我不知道如何解决它。这里是我的代码: class HanoiT(): def __init__(self, content=None): if content is None: self.content=[] else: self.content=content

    1热度

    1回答

    我正在尝试实施河内塔的递归函数。 的算法是: Move n−1 disks from peg AA to peg C using peg B as intermediate storage. Move the nth disk from peg A to peg B, Move n−1 disks from peg C to peg BB using peg A as intermedia

    0热度

    1回答

    我正在阅读我的朋友写给他的河内解决方案的代码。但是我很难弄清楚他的代码是干什么的,因为我不明白他的初始化配置和结束配置。 def T(init, final): if len(init) == 0: return if init[0] == final[0]: T(init[1:], final[1:]) else: fro = i

    0热度

    1回答

    我写了一个Hanoi Tower程序,但输出由于递归切换了A,B和C柱。有没有办法保留支柱以制作动画? 我的代码: #include <iostream> #include <vector> #include <stdlib.h> #include <windows.h> using namespace std; void printTowers(vector<int>& arr1,

    -1热度

    1回答

    我遇到问题,当我开始它的程序崩溃在功能全和推线70和78(Linux)。我试图解决它,但我总是在同一个地方崩溃。这样做的学校,并需要尽快修复它... #include <stdio.h> #define SIZE 64 struct stack{ int TowerTop; int Elem[SIZE]; }; /* Forwar

    -1热度

    1回答

    在略有修改的TOH中,我们有4个挂钩。所以我们总共有4^N个磁盘位置。 现在我正在经历的解决方案之一,给定的状态,使用下面的代码表示 - for(int disc = 0; disc < N; disc++){ state += tower[disc]<<(disc*2); } 塔[光盘] ​​ - >塔盘,其中当前所在,其可以是(0,1 ,2,3) 如果我在上面的代码中