Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 带回溯的和金字塔_Algorithm_Sum_Backtracking - Fatal编程技术网

Algorithm 带回溯的和金字塔

Algorithm 带回溯的和金字塔,algorithm,sum,backtracking,Algorithm,Sum,Backtracking,我正试图解决这个问题,我对回溯算法还不熟悉, 问题是制作一个这样的金字塔,这样两个数字上的一个数字就是它们的总和。金字塔中的每个数字都必须是不同的,并且小于100。像这样: 88 39 49 15 24 25 4 11 13 12 1 3 8 5 7 关于如何使用回溯进行此操作的任何指示?不一定是回溯,但有趣的是,您所要求的属性与Pascal Triangle属性非常相似 帕斯卡三角形(http://en.wikipedia.org/wiki/

我正试图解决这个问题,我对回溯算法还不熟悉, 问题是制作一个这样的金字塔,这样两个数字上的一个数字就是它们的总和。金字塔中的每个数字都必须是不同的,并且小于100。像这样:

     88
   39  49
  15  24  25
 4  11  13  12
1  3   8   5   7 

关于如何使用回溯进行此操作的任何指示?

不一定是回溯,但有趣的是,您所要求的属性与Pascal Triangle属性非常相似

帕斯卡三角形(http://en.wikipedia.org/wiki/Pascal“s_三角形”)是一个金字塔,其中一个数字等于上面两个数字的和,顶部为1,用于有效计算二项式系数

正如您所看到的,您正在询问相反的属性,其中一个数字是它下面的数字之和

                1
              1   1
            1   2   1
          1   3   3   1
        1   4   6   4   1
      1   5  10  10   5   1
    1   6  15  20  15   6   1
  1   7  21  35  35  21   7   1
1   8  28  56  70  56  28   8   1
例如,在上面的帕斯卡三角形中,如果你希望金字塔的顶部是56,你的金字塔将是从56开始的帕斯卡三角形的自下而上的重建,这将给出如下结果:

                 56
              21    35
            6    15    20
         1     5    10    10

同样,这不是一个回溯解决方案,这可能不会为每个N提供足够好的解决方案,尽管我认为这是一个有趣的近似值,值得注意。

如果您提供更多说明,例如金字塔中应有多少个总数,我想会有所帮助,或者任何其他要求。我假设整个事情是关于:给定一个数字N(N…,得到的金字塔的顶部是N…)。。。