当前位置: 首页 > wzjs >正文

三门峡网站设计经营网站备案信息

三门峡网站设计,经营网站备案信息,360房产网郑州官网,网络618营销策划方案这题目真是越做越难了。 但其实只是思路很难想到,一旦会了方法就很好做。 但问题就在方法太难想了…… 思路还是只要遍历一遍数组,维护动态规划数组记录截止至目前位置选取该元素的情况下有效括号的最大值。 光是知道这个还不够,看了答案…

这题目真是越做越难了。

但其实只是思路很难想到,一旦会了方法就很好做。

但问题就在方法太难想了……

思路还是只要遍历一遍数组,维护动态规划数组记录截止至目前位置选取该元素的情况下有效括号的最大值。

光是知道这个还不够,看了答案才知道每次可以取两个元素。

具体来说分三种情况:

  • 当前元素为‘(’,则最后取该元素时一定没有有效括号,所以元素取为0.
  • 当前元素为')',并且前面有元素且上一个元素为'(',这种情况就等于上上个元素数组维护的值加上2。
  • 当前元素为')',并且前面有元素且上一个元素为')',这种情况就要追溯到前面有效括号再之前的元素,如果前面有有效括号并且前面的有效括号前面是'(',这时当前元素前一个元素维护的值恰好记录的那个有效括号的长度,通过减去这个有效长度再减1(原本查看上一个元素也要减1,所以一共减2)就可以得到前面有没有相匹配的'(',于是就可以得到当前维护的数=前面有效括号的长度+2(若当前右括号与前面左括号相匹配)

状态转移方程如上。

class Solution {
public:int longestValidParentheses(string s) {if(s.size()==0) return 0;vector<int> array(s.size()+1,0);int result=0;for(int i=2;i<=s.size();i++){if(s[i-1]=='(') array[i]=0;else if(s[i-2]=='('&&s[i-1]==')') array[i]=array[i-2]+2;else if(s[i-2]==')'&&s[i-1]==')'&&i>=array[i-1]+2&&s[i-array[i-1]-2]=='(') array[i]=array[i-array[i-1]-2]+array[i-1]+2;result=max(result,array[i]);}return result;}
};

http://www.dtcms.com/wzjs/535972.html

相关文章:

  • 网站seo优化要懂得做微调推广是怎么做的
  • aspnet网站开发到部署流程海南省住房公积金管理局电话号码
  • 学设计的网站有哪些内容代理公司注册记账
  • 手机wap网站怎么做做移动网站优化优
  • 建设中网站哈尔滨城乡建设网站
  • 怎么样黑进网站后台营销网站建设公司推荐
  • 拖拽网站开发企业名录怎么导出
  • 网站点赞怎么做的信息技术教案 建设我们的网站
  • 外贸网站好做吗大连seo网站推广
  • 肇庆自助网站建设系统营销型网站页面
  • 怎样建立个人的网站三五互联网站
  • 海南省交通工程建设局网站重庆网站建设找重庆最佳科技
  • 公司建设网站需要去哪报备缅甸最新新闻
  • 网站建设策划方案书论文价格合理的网站建设
  • 电子商务网站建设的结论找人做网站被骗怎么办
  • 视频网站做游戏分发好的网站开发
  • 沈阳网站优化公司郑州网站建设排名
  • 门户网站建设定制188网站开发
  • 自己做网站系统教程wordpress 可视化排版
  • 有什么网站可以做免费推广淄博市网站云平台
  • asp 公司网站郓城网站建设价格
  • 海洋承德网站建设公司去黄山旅游攻略
  • 建站工具 phpwindwordpress个人
  • 网站备案号被注销怎么办应城网站建设
  • 长岭网站优化公司广东建站
  • 网站设计与制作说明郑州做网站软件
  • 网站类网站开发犯罪吗301重定向到新网站
  • 网站开发一个多少钱全网营销英文
  • 网站建设优化制作公司免费建设网站平台
  • jsp网站开发实训报告什么叫精品网站建设