区间dp
来源:互联网 发布:网络代理app软件 编辑:程序博客网 时间:2024/06/05 20:07
题意
在一个含有”[ ]”,”( )”两种括号的串中寻找最长的合法序列。
样例
Sample Input
((()))
()()()
([]])
)[)(
([][][)
end
Sample Output
6
6
4
0
6
思路
区间dp,i为起始位置,j为结束位置,k为中间位置
PS:不错的模板
#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>using namespace std;typedef long long LL;const int maxn=105;char st[maxn];int dp[maxn][maxn];int n;int main(){ while(~scanf("%s",st+1)){ memset(dp,0,sizeof(dp)); n=strlen(st+1); if(st[1]=='e')break; for(int L=2;L<=n;++L){ for(int i=1;i<=n-L+1;++i){ int j=i+L-1; for(int k=i;k<=j;++k){ if((st[i]=='('&&st[k]==')')||(st[i]=='['&&st[k]==']')) dp[i][j]=max(dp[i][j],dp[i+1][k-1]+2+dp[k+1][j]); else dp[i][j]=max(dp[i][j],dp[i][k]+dp[k+1][j]); } } } printf("%d\n",dp[1][n]); } return 0;}
阅读全文
0 0
- 区间DP
- 区间DP
- 区间DP
- 区间DP
- ##区间dp##
- 区间dp
- 区间DP
- 区间dp
- 区间dp
- 区间dp
- 区间dp
- 区间dp
- 区间dp
- 区间dp
- 区间DP
- 区间DP
- 区间DP
- 区间dp
- Spring MVC 和 Spring 总结
- 编译OpenCV缺少python27_d.lib的解决方法
- 4. 数据结构进阶四静态查询之索引顺序查询
- LeetCode 516. Longest Palindromic Subsequence
- <C++>4.重载函数
- 区间dp
- 深度学习笔记: 稀疏自编码器
- 用@Resource注解来装配属性
- 2的幂次方表示
- 爬取需要登录的网站数据
- 用@Autowired 注解来装配属性、自动装配
- Unreal语音示例:讯飞在线语音听写UE4 Demo
- [USACO08NOV]玩具Toys [洛谷2917] [bzoj1229]
- 5. 数据结构进阶五动态查询