摘要: 黑书p113上的题。我的思路:f[i][j]:i-j的最短规则序列长度f[i][j] = f[i][j - 1] + 2;当 s[j] == ')' && s[k] == '(' || s[j] == ']' && s[k] == '[' 时 f[i][j] <?= f[i][k - 1] + f[k + 1][j];/** * Problem:POJ1141 * Author:Shun Yao * Time:2013.5.19 * Result:Accepted * Memo:DP */#i 阅读全文
posted @ 2013-05-19 21:41 hsuppr 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 思路转自http://blog.csdn.net/bobten2008/article/details/4546528/*非常经典的一道DP(0,1背包)题,一个小小的错误让我调了几个小时,思路如下:1)首先对原图求补图,只有当原图中两个人i和j不同时认识时,在补图中rever[i][j] = rever[j][i] = true, 否则为false;这样做非常巧妙,通过这个转换将陌生的问题转换为了熟悉的问题2)利用dfs对补图求所有的连通分量,这样很容易看出,处于不同连通分量中的两个点肯定是可以组在一个队中的;在用dfs求连通分量的同时对同一个连通分量中的点进行0,1着色,这样当求得一个连通 阅读全文
posted @ 2013-05-19 16:47 hsuppr 阅读(242) 评论(0) 推荐(0) 编辑