poj 2955 区间dp 括号匹配
来源:互联网 发布:淘宝客服服务态度培训 编辑:程序博客网 时间:2024/05/22 23:03
题意:
求一个合法括号,问最长长度
思路:暴力dp
dp[i][j] 表示 区间[i,j] 上的最优解
#include<cstdio>#include<cstring>#include<vector>using namespace std;inline int Max(int a,int b){return a>b?a:b;}#define N 105char s[N];int dp[N][N];bool match(int i, int j){if(s[i] =='(' && s[j] ==')')return true;if(s[i] =='[' && s[j] ==']')return true;return false;}int main(){int i, j, k;while(scanf("%s",s+1), s[1]!='e'){int len = strlen(s+1);memset(dp, 0, sizeof(dp));for(i = len; i>=1; i --){for(j = i+1; j<=len; j++){dp[i][j] = Max(dp[i+1][j], dp[i][j-1]);for(k = i+1; k <= j; k++){if(match(i,k))dp[i][k] = Max(dp[i][k], dp[i+1][k-1]+2); dp[i][j]=Max(dp[i][j],dp[i][k]+dp[k+1][j]); }}}printf("%d\n",dp[1][len]);}return 0;}
- POJ 2955 括号匹配,区间DP
- POJ 2955 Brackets 括号匹配 区间DP
- poj 2955 区间dp 括号匹配
- poj 2955 区间dp(括号匹配)
- POJ 2955 Brackets (区间dp 括号匹配)
- poj 2955 Brackets 括号匹配 区间dp
- poj-2955 括号匹配--简单区间dp
- poj 2955 区间dp 最大括号匹配数
- poj 2955 Brackets(括号匹配,区间DP)
- POJ 2955-Brackets(括号匹配-区间DP)
- POJ 2955 括号匹配 Brackets (区间DP)
- POJ 2955 Brackets (区间DP,括号匹配)
- (POJ 2955)Brackets 区间DP 最大括号匹配
- POJ 2955 Brackets(括号最大匹配,区间DP)
- POJ-2955 Brackets(括号匹配-区间DP)
- [区间DP入门 括号匹配]Brackets POJ
- 区间dp括号匹配
- 【区间DP】NYOJ 737石子合并+POJ 2955 Brackets(括号匹配)+NYOJ 15 括号匹配(二)
- 献给初学者-DSP入门教程
- 编程面试的10大算法概念汇总
- 一年的总结
- Unsupported compiler 'com.apple.compilers.llvmgcc42' selected for architecture 'armv7'
- [codility]Abs-distinct
- poj 2955 区间dp 括号匹配
- [codility]Binary-gap
- UVA - 11384 Help is needed for Dexter
- uva10125 Sumsets
- 数据库同步和使用JSONObject让Java Bean“原地满状态复活”
- [codility]Equi
- java中参数数量可变的方法
- 第一个struts2程序
- [codility]Max-profit