随笔分类 - 题解
摘要:【问题描述】 有一个火车站,铁路如图所示,每辆火车从A驶入,再从B方向驶出,同时它的车厢可以重新组合。假设从A方向驶来的火车有n节(n<=1000),分别按照顺序编号为1,2,3,…,n。假定在进入车站前,每节车厢之间都不是连着的,并且它们可以自行移动到B处的铁轨上。另外假定车站C可以停放任意多节车
阅读全文
摘要:【问题描述】 在一个操场上一排地摆放着N堆石子。现要将石子有次序地合并成一堆。规定每次只能选相邻的2堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。 【编程任务】 试设计一个程序,计算出将N堆石子合并成一堆的最小得分。 【输入格式】 第一行为一个正整数N (2≤N≤100); 以下N行,
阅读全文
摘要:【问题描述】 一个旅行者有一个最多能用m公斤的背包,现在有n件物品,它们的重量分别是W1,W2,...,Wn,它们的价值分别为C1,C2,...,Cn.若每种物品只有一件求旅行者能获得最大总价值。 【输入格式】 第一行:两个整数,M(背包容量,M<=200)和N(物品数量,N<=30); 第2..N
阅读全文
摘要:递推 递归 1.暴力递归 2.记忆化递归 对比下二者的效率
阅读全文
摘要:假设有棵树,长下面这个样子, 它的前序遍历,中序遍历,后续遍历都很容易知道。 PreOrder: GDAFEMHZ InOrder: ADEFGHMZ PostOrder: AEFDHZMG 现在,假设仅仅知道前序和中序遍历,如何求后序遍历呢? 比如,已知一棵树的前序遍历是”GDAFEMHZ”,而中
阅读全文
摘要:题意:把n分成k份,有多少种不同的方法。 当n小的时候深搜是0k的。(6<=n<=200) 所以说要使用动态规划 状态转移方程 ans[k][n]表示把n分成k份的方案数。 ans[0][0]=1; ans[i][j]=ans[i-1][j-1]+ans[i][j-i]; =至少有一个盒子只有一个小
阅读全文