随笔分类 - 算法-dp
摘要:Description 给定一个正整数的集合A={a1,a2,….,an},是否可以将其分割成两个子集合,使两个子集合的数加起来的和相等。例A = { 1, 3, 8, 4, 10} 可以分割:{1, 8, 4} 及 {3, 10} Input 第一行集合元素个数n n ⇐300 第二行n个整数 #
阅读全文
摘要:基本思想 即在区间上的动态规划,通过得到子区间的最优解来求得原问题的最优解。 模板 求解在一个区间上的最优解,那么把这个区间分割成一个个小区间,求解每个小区间的最优解,再合并小区间得到大区间即可。枚举区间长度d为每次分割成的小区间长度(由短到长不断合并),内层枚举该长度下可以的起点,自然终点也就明了
阅读全文
摘要:问题描述 有种n种物品,每种只有一个,第i种物体的体积为w[i],价值为v[i].选一些物品装到一个容量为C的背包,使得背包内物体体积不超过C的前提下价值尽量大. 分析 首先约定Vi表示第 i 个物品的价值,Wi表示第 i 个物品的体积;定义dp(i,j):当前背包容量 j,前 i 个物品最佳组合对
阅读全文
摘要:思想 有些问题可以抽象为一个有向无环图,再进行求最短路,最长路或者路径计数问题,求得原问题的解. 模型 矩形嵌套问题: 描述有n个矩形,每个矩形可以用a,b来描述,表示长和宽。矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a<c,b<d或者b<c,a<d(相当于旋转X90度)。例如(1,5)可
阅读全文
摘要:Description 给定一个由n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形的顶至底的一条路径,使该路径经过的数字总和最大。 对于给定的由n行数字组成的数字三角形,计算从三角形的顶至底的路径经过的数字和的最大值。 Input 输入数据的第1行是数字三角形的行数n,1≤n≤10
阅读全文

浙公网安备 33010602011771号