题目链接: https://vjudge.net/contest/126708#problem/C

题意:这是一道求字符串的公共子串的最大长度的题目,用dp动态方程即可

if(a[i]==b[j]) dp[i][j]=dp[i-1][j-1]+1;
else dp[i][j]=(dp[i][j-1]>p[j][i-1]?dp[i][j-1]:p[j][i-1]);

这题主要是要注意两个字符串是同一行输入,题目没说字符串的长度,用c不是dp数组开大了编译不了就是开小了运行错误,错了几次就采用java的字符串来写,因为Java的数组可以根据字符串的长度来开,就不需要担心数组越界或者数组开小了;

AC代码:

 import java.io.BufferedInputStream;
import java.util.Scanner; public class Main {
static int dp[][]; public static void main(String[] args) { Scanner s = new Scanner(new BufferedInputStream(System.in));
while (s.hasNext()) {
String a = s.next(), b = s.next();
int len1 = a.length(), len2 = b.length(); dp = new int[len1 + ][len2 + ]; //按字符串的长度开DP数组
for (int i = ; i <= len1; i++)
for (int j = ; j <= len2; j++)
dp[i][j] = ; for (int i = ; i <= len1; i++)
for (int j = ; j <= len2; j++)
if (a.charAt(i - ) == b.charAt(j - )) {
dp[i][j] = dp[i - ][j - ] + ;
} else {
dp[i][j] = Math.max(dp[i - ][j], dp[i][j - ]);
}
System.out.println(dp[len1][len2]);
}
s.close();
} }

2016huasacm暑假集训训练五 C-Common Subsequence的更多相关文章

  1. 2016huasacm暑假集训训练五 H - Coins

    题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/H 题意:A有一大堆的硬币,他觉得太重了,想花掉硬币去坐的士:的士司机可以不找零,但 ...

  2. 2016huasacm暑假集训训练五 J - Max Sum

    题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/J 题意:求一段子的连续最大和,只要每个数都大于0 那么就会一直增加,所以只要和0 ...

  3. 2016huasacm暑假集训训练五 G - 湫湫系列故事——减肥记I

    题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/G 这是一个01背包的模板题 AC代码: #include<stdio.h&g ...

  4. 2016huasacm暑假集训训练五 F - Monkey Banana Problem

    题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/F 题意:求至上而下一条路径的所经过的值得和最大值,这题比赛时就出了 但当时看不懂题 ...

  5. 2016huasacm暑假集训训练五 E - What Is Your Grade?

    题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/E 题意:给做出的题目个数,5个的100分,4个的前n/2的同学95,后n/2的90 ...

  6. 2016huasacm暑假集训训练四 DP_B

    题目链接:http://acm.hust.edu.cn/vjudge/contest/125308#problem/M 题意:有N件物品和一个容量为V的背包.第i件物品的费用是体积c[i],价值是w[ ...

  7. 2016huasacm暑假集训训练四 数论_B

    题目链接:http://acm.hust.edu.cn/vjudge/contest/125308#problem/G 题意:求有多少x(1<=x<=n),使得gcd(x,n)>=m ...

  8. 2016huasacm暑假集训训练四 数论_A

    题目链接:http://acm.hust.edu.cn/vjudge/contest/125308#problem/F 题意:狼捉兔子,兔子躲在n个洞中一个,这n个洞围成一个圈,狼会从第0号洞开始,搜 ...

  9. 2016huasacm暑假集训训练四 _排列

    题目链接:http://acm.hust.edu.cn/vjudge/contest/125308#problem/D 这题要求错误的方式有多少种,就是一个错排公式,记得公式就行            ...

随机推荐

  1. gloolooer

    V1.2gloolooer金[http://sh.yun.ftn.qq.com/ftn_handler/0a9043ee7aa120d3c864281211dff2f08efe5e2d42438ec5 ...

  2. javase-->多线程--线程池

    java的线程池理解 在面向对象编程中,对象创建和销毁是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源.在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收. ...

  3. hdu 2222 Keywords Search

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=2222 思路:裸AC自动机,直接贴代码做模板 #include<stdio.h> #includ ...

  4. 解决CURL 请求本地超时

    首先,这样的问题只会出现在Windows+Nginx中. php-cgi 默认使用的是9000端口,即使多个进程也并发的是9000端口 在用户访问一个php页面的时候nginx已将该进程占用,在该进程 ...

  5. Ubuntu 搭建SSH服务器

    参考地址:https://help.ubuntu.com/community/SSH/OpenSSH/Configuring 配置文件路径:/etc/ssh/ssh_config 和 /etc/ssh ...

  6. 整理几种在axure里使页面居中的方法

    1. 用动态面板固定浏览器功能. 很简单方便. 但缺点是 当浏览器窗口大小小于页面时, 由于会强制居中,导致页面2边是在显示范围外并且是无法通过滚动条滚动的(滚动条是没有的). 2. 使用页面属性里的 ...

  7. 毕业论文—使用js将canvas保存为图片文件,并且自定义文件名

    该文章引用http://blog.csdn.net/qq547276542/article/details/51906741 1.从canvas中直接提取图片元数据 // 图片导出为 png 格式 v ...

  8. ThreadLocal内部机制及使用方法

    一.介绍ThreadLocal内部机制之前,先简单说明一下其特点及用途: 1.ThreadLocal是单线程内共享资源,多线程间无法共享(即线程A访问不了线程B中ThreadLocal存放的值): 2 ...

  9. C#改善程序的50种方法

    作者: suyan010203  来源: 博客园  发布时间: 2011-07-09 14:47  阅读: 11976 次  推荐: 8   原文链接   [收藏] 从去年找工作以来,都没什么时间写博 ...

  10. python 小程序 查找最大的python文件

    使用os.path模块方法介绍 1. 扫描标准库目录     I 通过glob模块遍历一个目录下面的所有文件,glob接收shell中常用文件名模式语法:"?"代表任何单个字符,* ...