上一篇讲了贪心算法来解活动选择问题(【算法导论】贪心算法之活动选择问题),发现后面有一道练习16.1-1是要用动态规划来解活动选择问题。其实跟之前的矩阵链乘法有些相似,也是考虑分割的活动是哪一个,并用二维数据来记录Sij---最大兼容集合个数,和用另一个二维数据来记录Sij取得最大时的活动分割点k。然后就是考虑边界问题,和使用递归来求动态规划的最优解。
#i...
分类:
编程语言 时间:
2015-01-28 22:36:17
阅读次数:
408
A Telephone Line Company (TLC) is establishing a new telephone cable network. They are connecting several places numbered by integers from 1 to N. No two places have the same number. The lines are bid...
分类:
Web程序 时间:
2015-01-26 19:20:13
阅读次数:
165
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=2730分析:如果坍塌的点不是割点,那没什么影响,主要考虑坍塌的点是割点的情况。显然我们可以先求出所有割点把整个图分成若干个连通块如果一个联通块只与一个割点相连,说明我们必须在这个连通块中选...
分类:
其他好文 时间:
2015-01-21 01:11:00
阅读次数:
138
原题地址动态规划题。最直观的想法就是用cut[i][j]表示子串s[i..j]的最小分割数,则有如下规则:1. 如果s[i..j]是回文串,则cut[i][j]=02. 如果s[i..j]不是回文串,则枚举分割点,将原字符串切成两个子串,求解子问题。递推公式:cut[i][j] = min{cut[...
分类:
其他好文 时间:
2015-01-20 17:31:50
阅读次数:
165
题目:http://poj.org/problem?id=1523题目解析:注意题目输入输入,防止PE,题目就是求割点,并问割点将这个连通图分成了几个子图,算是模版题吧。#include #include #include #include #include #include #define N 1...
分类:
其他好文 时间:
2015-01-19 20:55:14
阅读次数:
183
题意:求哪些点是割点,割掉以后能把图分成几块。
太水不欲发题解。
tarjan就好,不懂看代码。
代码:
#include
#include
#include
#include
#define N 1005
using namespace std;
int map[N][N];
bool exist[N];
int dfn[N],low[N],cnt;
int stk[N],top...
分类:
其他好文 时间:
2015-01-13 10:42:00
阅读次数:
162
(以下的前提是Mac Chrome)
直接使用Chrome调试器编写代码的同学福音,如何设置自己的调试器,使其能够应用各种主题,达到Sublime等的视觉效果~本文对新旧版本的Chrome浏览器都可以(Stackoverflow上说分割点是Chrome 33),直奔主题:
Mac上对于低版本的chrome浏览器:
1)找到合适Chome主题css文件(例如Obsidian...
分类:
系统相关 时间:
2015-01-13 09:04:14
阅读次数:
273
题目大意:给出一个三维的点阵,没个点都有可能被切割,代价就是这个点的权值。相邻的切割点的高度差不能超过D,问最小的花费使得上下分开。
思路:很裸的最小割模型,很神的建图。
S->第一层的点,f:INF
所有点->它下面的点,f:INF
一个点的入->一个点的出,f:val[i]
(i,j,k) - > (i - d,j,k),f:INF
最下面一层的点->T:f:INF
然后...
分类:
其他好文 时间:
2015-01-09 21:03:34
阅读次数:
234
split方法用于把一个字符串切割成字符串数组,与join相反一个参数表示以该参数为切割点,1 var str="silence's world";2 console.log(str.split(" "));// ["silence's", "world"]3 console...
分类:
Web程序 时间:
2014-12-26 12:34:04
阅读次数:
119
背景:困扰了我昨天一个晚上,原来开始的想法一直是不对的,我一直凭借直觉感觉(没有任何理论依据)认为必须在r和b的交接点切分才会到达最多豆子。最后我在草稿本上列举出了一种不符合的情况,才开始改程序。
思路:就是对每一个分割点进行计算看它能有多少个豆子,取所有分割点中豆子最多的。
心得:对于算法我以前抱有评感觉做得陋习,而没有去深究并尝试证明,这样终将导致出错。深入问题本身,用逻辑严密的方法分析清...
分类:
其他好文 时间:
2014-12-16 08:49:35
阅读次数:
170