括号东东(dp+字符串)
来源:互联网 发布:ransac算法详解 编辑:程序博客网 时间:2024/06/06 00:47
点击打开链接
1、题目:
括号东东 Time Limit: 1000MS Memory limit: 65536K 题目描述 已知给出若干个只包含 “(” 或者 “)”字符串str!字符串的长度小于等于100W!求最长合法子串以及合法子串的个数!! 合法字串的格式要求如下: 1. “()” 2. “(())()” 3. “(()(()))” 不合法的情况如: 1. “)(” 2. “(()” 3. “(()))(” 4.......输入 输入包含若干组测试数据,每组为一行字符串。输出对于每组测试数据,输出最长合法子串以及合法子串的个数(如果最长合法子串为0,那么输出 0 1)!示例输入))()((())))(()())示例输出0 16 2
2、代码:
#include<stdio.h>#include<string.h>char str[1000015];int dp[1000015];int ans,num;int main(){ while(scanf("%s",str)!=EOF) { int len=strlen(str); dp[0]=0; ans=0;num=1; for(int i=1; i<len; i++) { dp[i]=0; if(i-dp[i-1]-1>=0&&str[i]==')'&&str[i-dp[i-1]-1]=='(') { dp[i]=dp[i-1]+2; if(i-dp[i-1]-2>=0&&dp[i-dp[i-1]-2]) { dp[i]+=dp[i-dp[i-1]-2]; } } if(ans<dp[i]) { ans=dp[i]; num=1; } else if(ans==dp[i]&&ans) num++; } printf("%d %d\n",ans,num); } return 0;}
- 括号东东(dp+字符串)
- SDUT 1451 括号东东
- poj2955(括号匹配DP)
- 区间dp理解 添加最少的括号使得括号字符串匹配
- NYOJ - 括号匹配(二)(经典dp)
- NYOJ 括号匹配(二) 区间DP
- poj1141(括号匹配-区间dp)
- NYOJ 15 括号匹配(二) dp
- NYOJ15括号匹配(=)区间DP
- nyoj 括号匹配(二) 【DP】
- 括号匹配(二) 区间DP
- poj 2955 区间dp(括号匹配)
- nyoj15括号匹配(二)【区间dp】
- poj2955Brackets区间dp(括号匹配)
- nyoj 15 括号匹配 (dp)
- 括号最大匹配(区间dp)
- 区间DP(括号序列,uva1626)
- NYOJ 括号匹配(二)(区间dp)
- YII中CSS的导入问题
- 如何使用W5200E01-M3/W7200EVB?
- Google API 应用大全SVN Checkout 地址
- Yii Framework 设置 获取pageTitle
- jason数据格式介绍
- 括号东东(dp+字符串)
- Android安卓编码规范及性能优化
- 褪去华衣 裸视学习 探讨系列
- ASP.NET 关健字查询:高亮显示
- Android系统进程间通信Binder机制在应用程序框架层的Java接口源代码分析
- Infecting loadable kernel modules 笔记
- ymPrompt 自定义关闭弹出的子窗口
- java怎么把system.out的东西输出到文件上
- Note: This element neither has attached source nor attached Javadoc and hence no Javadoc could