903. DI 序列的有效排列

      public int numPermsDISequence(String S) {
int n=S.length();
int [][]dp=new int [n+1][n+1];
dp[0][0]=1;
int M=(int) (Math.pow(10, 9)+7);
//dp[i][j]i表示取到s的下标,j表示结尾取的数值
for(int i=0;i<n;i++){
if(S.charAt(i)=='I'){
for(int j=1;j<=i+1;j++)
dp[i+1][j]=(dp[i+1][j-1]+dp[i][j-1])%M;
}else{
for(int j=i;j>=0;j--)
dp[i+1][j]=(dp[i+1][j+1]+dp[i][j])%M;
}
}
int res=0;
for(int i=0;i<=n;i++)
res=(res+dp[n][i])%M;
return res;
}

32. 最长有效括号

   public int longestValidParentheses(String s) {
if (s.length() < 2)
return 0;
int[] dp = new int[s.length()];
int res = 0;
for (int i = 1; i < s.length(); i++) {
if (s.charAt(i) == ')') {
if (s.charAt(i-1) == '(')
dp[i] = 2 + (i - 2 >= 0 ? dp[i-2] : 0);
else if (i - 1 - dp[i-1] >= 0 && s.charAt(i - 1 - dp[i-1]) == '(')
dp[i] = 2 + dp[i-1] + (i - 2 - dp[i-1] >= 0 ? dp[i-2-dp[i-1]] : 0);
res = Math.max(res, dp[i]);
}
}
return res;
}

dp高难本攻略的更多相关文章

  1. bzoj 3252 攻略 长链剖分思想+贪心

    攻略 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 889  Solved: 423[Submit][Status][Discuss] Descrip ...

  2. [HYSBZ - 3252] 攻略

    问题描述 题目简述:树版[k取方格数] 众所周知,桂木桂马是攻略之神,开启攻略之神模式后,他可以同时攻略k部游戏.今天他得到了一款新游戏<XX 半岛>,这款游戏有n个场景(scene),某 ...

  3. Android屏幕适配全攻略(最权威的官方适配指导)屏幕尺寸 屏幕分辨率 屏幕像素密度 dpdipdpisppx mdpihdpixdpixxdpi

    Android屏幕适配全攻略(最权威的官方适配指导)原创赵凯强 发布于2015-05-19 11:34:17 阅读数 153734 收藏展开 转载请注明出处:http://blog.csdn.net/ ...

  4. 【C#代码实战】群蚁算法理论与实践全攻略——旅行商等路径优化问题的新方法

    若干年前读研的时候,学院有一个教授,专门做群蚁算法的,很厉害,偶尔了解了一点点.感觉也是生物智能的一个体现,和遗传算法.神经网络有异曲同工之妙.只不过当时没有实际需求学习,所以没去研究.最近有一个这样 ...

  5. 微软MVP攻略 (如何成为MVP?一个SQL Server MVP的经验之谈)

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 初衷 什么是微软MVP? 成为微软MVP的条件? 如何成为微软MVP? (一) 申请时间划分 (二) 前期准备 (三) ...

  6. Windows下LATEX排版论文攻略—CTeX、JabRef使用介绍

    Windows下LATEX排版论文攻略—CTeX.JabRef使用介绍 一.工具介绍 TeX是一个很好排版工具,在学术界十分流行,特别是数学.物理学和计算机科学界. CTeX是TeX中的一个版本,指的 ...

  7. linux下安装apache与php;Apache+PHP+MySQL配置攻略

    1.apache   在如下页面下载apache的for Linux 的源码包    http://www.apache.org/dist/httpd/;   存至/home/xx目录,xx是自建文件 ...

  8. 生成 PDF 全攻略【2】在已有PDF上添加内容

    项目在变,需求在变,不变的永远是敲击键盘的程序员..... PDF 生成后,有时候需要在PDF上面添加一些其他的内容,比如文字,图片.... 经历几次失败的尝试,终于获取到了正确的代码书写方式. 在此 ...

  9. Java数组技巧攻略

      Java数组技巧攻略 0.  声明一个数组(Declare an array) String[] aArray = new String[5]; String[] bArray = {" ...

随机推荐

  1. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-file

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...

  2. redis学习(六)

    一.Redis 数据备份与恢复 1.Redis SAVE 命令用于创建当前数据库的备份.该命令将在 redis 安装目录中创建dump.rdb文件. 2.语法:redis 127.0.0.1:6379 ...

  3. CodeForces - 755C PolandBall and Forest (并查集)

    题意:给定n个数,Ai的下标为1~n.对于每一个i,Ai与i在同一个树上,且是与i最远的点中id最小的点(这个条件变相的说明i与Ai连通).求森林中树的个数. 分析:若i与Ai连通,则在同一个树上,因 ...

  4. 存储器HK1225-7EQ 使用说明书资料

    一. 引脚排列 二. 读取模式 HK1225在WE(写使能)被禁止(high)且CE(片选)被选中(Low)且CE2(片选2)被选中(High)并且OE(读信号)被使能(Low)执行一次读循环.13个 ...

  5. 九十八、SAP中ALV事件之十一,查看图片

    一.输入事务代码OAER 二.可以看到相关的图片文件了

  6. FindWindowXG

    测试: 函数代码: function FindWindowXG(strClass, strTitle: string): THandle; var hd: THandle; arrClass: ..] ...

  7. vs code 切换语言(切换回英文)

    安装中文 安装教程:https://www.cnblogs.com/chenxi188/protected/p/11757456.html 切换回英文 调出搜索:ctrl+shift+p 输入:lan ...

  8. Spring 面向切面编程(AOP)

    Spring 系列教程 Spring 框架介绍 Spring 框架模块 Spring开发环境搭建(Eclipse) 创建一个简单的Spring应用 Spring 控制反转容器(Inversion of ...

  9. JavaScript获取当前日期前后7天的日期

    function fun_date(aa){ var date1 = new Date(), time1=date1.getFullYear()+"-"+(date1.getMon ...

  10. 【Vue中的坑】路由相同参数不同无法触发路由

    场景: vue实现导航栏,二级导航栏跳转到相同页面,通过参数来实现到该页面后,根据参数来滚动到对应到位置 网上的解决方法: 通常情况下我们喜欢设置keepAlive 包裹 router-view &l ...