算法

试用 Prolog 语言解算法题

现有一列随机的正整数,算他有2^n个吧,然后两两结合生成一个二叉树,节点是上一级两个数的和,合成的cost是上一级两个数的乘积。 而整个树的cost由总cost最高的那个branch决定,求用什么方法排列这一列数使生成的树cost最低。 例如,1,2,3,4这四个数 C=21+12=33 % 将一个树分成等长的左子树和右子树 bisect(List, Left, Right) :- append(Left, Right, List), length(Left, LeftLength), length(Right, RightLength)

  • George Chung
    George Chung
1 min read
C

计算机是蛋疼人类的好朋友系列(

实验室有个玩具,不知道是谁手欠买来的。是这样的一个东西: 据说它原来是个3x3x3的正方体,不知道又是谁手欠给展开了。 由于智商很宝贵的原因,我拿手里摆弄了好几天都没给它恢复成一个正方体。 怒,写个搜索算法。 #include <stdio.h> #define sbyte signed char // sbyte: (-128 to +127) #define SIZE 3 // Size of cube. #define AREA (SIZE * SIZE) // Area

  • George Chung
    George Chung
4 min read