一个串的子串是指该串的一个连续的局部。如果不要求连续,则可称为它的子序列。
比如对串: "abcdefg" 而言,"ab","abd","bdef" 等都是它的子序列。
特别地,一个串本身,以及空串也是它的子序列。

对两个串而言,可以有许多的共同的子序列,我们关心的是:它们所共同拥有的长度最大的子序列是多长。以下代码实现了这个问题的求解。请填写划线部分缺失的代码。

注意:只填写缺少的代码,不要写任何多余的内容,比如注释或说明文字。

public class Main
{public static int f(String x, String y){if(x.length()==0) return 0;if(y.length()==0) return 0;String x1 = x.substring(1);String y1 = y.substring(1); if(x.charAt(0)==y.charAt(0)) return f(x1,y1)+1;return ___________________________;}public static void main(String[] args){System.out.println(f("ac","abcd")); //2System.out.println(f("acebbcde1133","xya33bc11de")); //5}
}

答案:Math.max(f(x, y1), f(x1, y))

思路:典型的递归,我们可以看出出口为x.charAt(0)==y.charAt(0),那么状态方程就是Math.max(f(x, y1), f(x1, y)),很容易理解,不多解释。

蓝桥杯第五届省赛JAVA真题----最长公共子序列相关推荐

  1. 蓝桥杯第五届省赛JAVA真题----n级台阶

    有n级台阶.从地面(第0级)出发,首先连续的上台阶,上到不超过第n级的某一个位置后再连续的下台阶,直到回到地面.若每次上下台阶只允许走1级或2级,请问可能的上下台阶的方案数是多少? 特别地,在0级站着 ...

  2. 蓝桥杯第五届省赛JAVA真题----七对数字

    今有7对数字:两个1,两个2,两个3,-两个7,把它们排成一行. 要求,两个1间有1个其它数字,两个2间有2个其它数字,以此类推,两个7之间有7个其它数字.如下就是一个符合要求的排列: 1712642 ...

  3. 蓝桥杯第八届省赛JAVA真题----k倍区间

    标题: k倍区间 给定一个长度为N的数列,A1, A2, ... AN,如果其中一段连续的子序列Ai, Ai+1, ... Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍 ...

  4. 蓝桥杯第八届省赛JAVA真题----油漆面积

    标题:油漆面积 X星球的一批考古机器人正在一片废墟上考古. 该区域的地面坚硬如石.平整如镜. 管理人员为方便,建立了标准的直角坐标系. 每个机器人都各有特长.身怀绝技.它们感兴趣的内容也不相同. 经过 ...

  5. 蓝桥杯第三届省赛JAVA真题----取球博弈

    题目描述 今盒子里有n个小球,A.B两人轮流从盒中取球,每个人都可以看到另一个人取了多少个,也可以看到盒中还剩下多少个,并且两人都很聪明,不会做出错误的判断. 我们约定: 每个人从盒子中取出的球的数目 ...

  6. 蓝桥杯第八届省赛JAVA真题----Excel地址

    标题: Excel地址 Excel单元格的地址表示很有趣,它使用字母来表示列号. 比如, A表示第1列, B表示第2列, Z表示第26列, AA表示第27列, AB表示第28列, BA表示第53列, ...

  7. 蓝桥杯第八届省赛JAVA真题----9数算式

    标题:9数算式 观察如下的算式: 9213 x 85674 = 789314562 左边的乘数和被乘数正好用到了1~9的所有数字,每个1次. 而乘积恰好也是用到了1~9的所有数字,并且每个1次. 请你 ...

  8. 蓝桥杯第八届省赛JAVA真题----包子凑数

    标题:包子凑数 小明几乎每天早晨都会在一家包子铺吃早餐.他发现这家包子铺有N种蒸笼,其中第i种蒸笼恰好能放Ai个包子.每种蒸笼都有非常多笼,可以认为是无限笼. 每当有顾客想买X个包子,卖包子的大叔就会 ...

  9. 蓝桥杯第八届省赛JAVA真题----分巧克力

    标题: 分巧克力 儿童节那天有K位小朋友到小明家做客.小明拿出了珍藏的巧克力招待小朋友们. 小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形. 为了公平起见,小明需要从这 N 块巧克 ...

最新文章

  1. 【c语言】蓝桥杯算法提高 算术运算
  2. 卷积神经网络性能优化
  3. 一个批量停止和启动服务的工具
  4. 【拔刀吧少年】之循环三兄弟for while until
  5. oracle隐式转换函数,隐式数据类型转换案例一则
  6. 设计模式系列之十二:单例模式
  7. C#算法设计排序篇之02-快速排序(附带动画演示程序)
  8. fpga多摩川编码器开源代码_F28379D之CLB解码多摩川编码器1——入手小知识(原创)...
  9. js中数组原型Array、自定义原型函数Array.prototype
  10. 推荐一个简单好用的HTML编辑器
  11. vue.js 知乎_zhihu每日水疗中心与vue.js
  12. 看看你去苹果公司的话能挣多少钱
  13. python制作英语字典_python制作英文学习字典案列
  14. swath data 是什么意思
  15. spring spel 获取环境变量
  16. 英语爱阅读--I hope you live a life you're proud of
  17. E. Stupid Submissions(思维)
  18. 使用install shield制作安装程序问题集锦
  19. php dwg格式,无需AutoCAD,用C#生成DWG文件
  20. 【Python 身份证JSON数据读取】——身份证前六位地区码对照表文件(最全版-JSON文件)

热门文章

  1. 二级c语言程序设计翻译,C语言程序设计报错英文翻译
  2. 万年历c语言大作业实验,用C语言写的一个万年历
  3. python 字典组成的列表_python - 合并多列表组成一个字典
  4. 静态内部类----Java
  5. java循环的嵌套执行
  6. mysql 数据库中数据去重,oracle数据库中如何达到像mysql数据库中group by 那种去重的效果..求大神解答...
  7. IOS 定义手势监听器详解,利用 UIGestureRecognizer 进行捏合、旋转、平移、点击、长按手势事件响应
  8. Java 时间戳转换成时间
  9. MySql数据库驱动类
  10. GoogleNet网络详解与keras实现