POJ 1141:Brackets Sequence
摘要:
题意:定义合法串为(),[]以及他们的并列组合如()[],()(),或嵌套组合如([]),(())。 其实正常理解就好~然后给你一个串,让你求出把它改对后的最短合法串。类型:DP动态规划思路:当我拿到一个字符i, 那么在一种最优结果中,它只有这么两种结果:要么和某个字符匹配,要么不匹配。定义状态:dp[i][j]为 i到j的子串中 所能做到的最大匹配数符号数。最大匹配符号数说明:如(([))]] 如果这么匹配(([))]] 数量为2, 而这样匹配 (([))]] 数量为4。易知后者也是最大的,所以这个子串最大匹配符号数为4.状态转移:首先特判:若i所在字符与j所在字符能匹配(() 或 []). 阅读全文
posted @ 2013-05-15 17:11 ShineCheng 阅读(125) 评论(0) 推荐(0) 编辑