摘要:
Problem 平衡二叉树(AVL树),是指左右子树高度差至多为1的二叉树,并且该树的左右两个子树也均为AVL树。 现在问题来了,给定AVL树的节点个数n,求有多少种形态的AVL树恰好有n个节点。 Solution f[n][h]代表n个节点,高度为h的AVL树的种数。 f[n][h]=f[n i 阅读全文
摘要:
Problem 在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。 如2 4 3 1中,2 1,4 3,4 1,3 1是逆序,逆序数是4。 1 n的全排列中,逆序数最小为0(正序),最大为n (n 1) / 阅读全文
摘要:
Problem 小明非常喜欢树,有一天小明得到这样一棵树,每个树节点都有一个编号,有n个节点的树的编号为1到n,每个编号代表该节点的海拔高度,现在小明要在这颗树上找到一些路径,从起点到终点需要满足海拔先单调上升后单调下降的性质,起点或终点不同即为不同的路径,问满足条件的路径有多少条,聪明的你可以帮助 阅读全文
摘要:
Problem 有一个a数组,里面有n个整数。现在要从中找到两个数字(可以是同一个) ai,aj ,使得 ai mod aj 最大并且 ai ≥ aj。 Solution 遍历模数,枚举倍数,对于每一个倍数,找到比倍数小的最大值。这个最大值之前预处理出来,注意细节。 Code 阅读全文
摘要:
Problem 小明家要盖新房子了,但是小明家里没有钱,垒墙用的砖块都是别人用省下来的,所以砖块的长度是不固定的,但是无论怎么说,墙是垒好了,有一天小明看着墙发呆,想出来这样一个问题,问题如下: 你的面前有一堵方形的、由多行砖块组成的砖墙。 这些砖块高度相同但是宽度不同。你现在要画一条自顶向下的、穿 阅读全文
摘要:
Problem 有N条绳子编号 0 至 N 1,每条绳子后面栓了一个重物重量为Wi,绳子的最大负重为Ci。每条绳子或挂在别的绳子下或直接挂在钩子上(编号 1)。如果绳子下所有重物的重量大于绳子的最大负重就会断掉(等于不会断)。依次给出每条绳子的负重Ci、重物的重量Wi以及绳子会挂在之前的哪条绳子的下 阅读全文
摘要:
Problem 现在有一个N N的六边形网格平面(这种平面类似蜂窝形状)。下图是N=1,2,3,4条件下的具体形状,根据它们可以依次类推N=5,6,....。 现在你需要对N N网格中一些格子进行上色,在给定的输入中这些格子被标记上字符‘X’,而不用上色的网格被标记为‘ ’。上色时需要注意,如果两个 阅读全文
摘要:
Problem 上帝创造了一个n m棋盘,每一个格子都只有可能是黑色或者白色的。 亚当和夏娃在玩一个游戏,每次寻找边长为x的正方形,其中每个格子必须为黑色,然后将这些格子染白。 如果谁不能操作了,那么那个人就输了。 亚当喜欢质数。 夏娃喜欢1,但讨厌2。 因此他们规定,x只有可能是非2质数或者是1。 阅读全文
摘要:
Problem 一个整数序列S的LCM(最小公倍数)是指最小的正整数X使得它是序列S中所有元素的倍数,那么LCM(S)=X。 例如,LCM(2)=2,LCM(4,6)=12,LCM(1,2,3,4,5)=60。 现在给定一个整数N(1<=N<=1000000),需要找到一个整数M,满足M>N,同时L 阅读全文
摘要:
Problem 一个袋子中有n个彩球,他们用k种不同的颜色染色。颜色被从1到k编号。同一种颜色的球看成是一样的。现在从袋中一个一个的拿出球来,直到拿完所有的球。对于所有颜色为i (1<=i<=k-1)的球,他的最后一个球总是在编号比他大的球拿完之前拿完,问这样情况有多少种。 样例解释:这个样例中有2 阅读全文