【题目描述】

我们称序列Z=<z1,z2,...,zk>是序列X=<x1,x2,...,xm>的子序列当且仅当存在严格上升的序列<i1,i2,...,ik>,使得对j=1,2,...,k,有xij=zj。比如Z=<a,b,f,c> 是X=<a,b,c,f,b,c>的子序列。

现在给出两个序列X和Y,你的任务是找到X和Y的最大公共子序列,也就是说要找到一个最长的序列Z,使得Z既是X的子序列也是Y的子序列。

【输入】

输入包括多组测试数据。每组数据包括一行,给出两个长度不超过200的字符串,表示两个序列。两个字符串之间由若干个空格隔开。

【输出】

对每组输入数据,输出一行,给出两个序列的最大公共子序列的长度。

【输入样例】

abcfbc abfcab
programming contest
abcd mnp

【输出样例】

4
2
0

【源程序】

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<string>
#include<cstdlib>
#include<queue>
#include<vector>
#define INF 0x3f3f3f3f
#define PI acos(-1.0)
#define N 501
#define MOD 2520
#define E 1e-12
using namespace std;
char a[N],b[N];
int f[N][N];
int main()
{while(scanf("%s%s",a+1,b+1)!=EOF){int len_a=strlen(a+1);int len_b=strlen(b+1);for(int i=1;i<=len_a;i++)f[i][0]=0;for(int j=1;j<=len_b;j++)f[0][j]=0;for(int i=1;i<=len_a;i++)for(int j=1;j<=len_b;j++){if(a[i]==b[j])f[i][j]=f[i-1][j-1]+1;elsef[i][j]=max(f[i-1][j],f[i][j-1]);}cout<<f[len_a][len_b]<<endl;}return 0;
}

公共子序列(信息学奥赛一本通-T1297)相关推荐

  1. 信息学奥赛一本通(1281:最长上升子序列)

    1281:最长上升子序列 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 15871     通过数: 8180 [题目描述] 一个数的序列bibi,当b1< ...

  2. 最近公共祖先三种算法详解 + 模板题 建议新手收藏 例题: 信息学奥赛一本通 祖孙询问 距离

    首先什么是最近公共祖先?? 如图:红色节点的祖先为红色的1, 2, 3. 绿色节点的祖先为绿色的1, 2, 3, 4. 他们的最近公共祖先即他们最先相交的地方,如在上图中黄色的点就是他们的最近公共祖先 ...

  3. 信息学奥赛一本通 (C++)上机练习

    信息学奥赛一本通(C++)上机练习 此书为娃儿的第一本刷题书.娃儿现在四年级 ,希望他能坚持下来.特开贴加油 luogu: disangan223 第一部分 C++语言 第一章 C++语言入门 T10 ...

  4. 信息学奥赛一本通(基础算法与数据结构-题解汇总目录)

    信息学奥赛一本通(C++版)在线评测系统 基础(二)基础算法   更新中...... 第一章高精度计算 1307[例1.3]高精度乘法 1308[例1.5]高精除 1309[例1.6]回文数(Noip ...

  5. 信息学奥赛一本通(C++版) 第二部分 基础算法 第九章 动态规划

    总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 第二部分 基础算法 第九章 动态规划 第一节 动 ...

  6. 信息学奥赛一本通(C++版) 刷题 记录

    总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 刷题 记录 http://ybt.ssoier. ...

  7. 信息学奥赛一本通T1451:棋盘游戏

    信息学奥赛一本通T1451:棋盘游戏 [题目描述] 在一个 4×4 的棋盘上有 8 个黑棋和 8 个白棋,当且仅当两个格子有公共边,这两个格子上的棋是相邻的.移动棋子的规则是交换相邻两个棋子. 给出一 ...

  8. 《信息学奥赛一本通 提高篇》 第四部分 数据结构 第4章 倍增求LCA

    例题1 点的距离 信息学奥赛一本通(C++版)在线评测系统 例题2 暗的连锁(Poj3417) 信息学奥赛一本通(C++版)在线评测系统 LOj10131 暗的连锁_juruo_xlh-CSDN博客 ...

  9. 信息学奥赛一本通 1263:【例9.7】友好城市

    [题目链接] ybt 1263:[例9.7]友好城市 [题目考点] 1. 动态规划:线性动规 2. 排序 [解题思路] 该题可以抽象为两条平行线上各有若干点,给定一些两条线上点之间的连线,在选出连线不 ...

最新文章

  1. CentOS 6.6编译安装Squid 配置反向代理服务器
  2. 教你搞定Android自定义View
  3. IOS开发之自定义Button(集成三种回调模式)
  4. bar图设置距离 python_python画图设置坐标轴的位置及角度及设置colorbar
  5. ubuntu 如何转换 ppk ,连接 amazon ec2
  6. MySql 踩坑小记 1
  7. 荣耀鸿蒙系统开机动画,荣耀赵明:鸿蒙系统首发设备欲屏蔽开机广告
  8. bzoj千题计划287:bzoj1228: [SDOI2009]ED
  9. pos机改造迷你打印机_小票打印机如何自动弹出钱箱
  10. Hessian Matrix
  11. obs计算机丢失,安装obs时提醒没法启动此程序,因为计算机丢失
  12. 09、win32 转换为 store app
  13. Centos Linux 下Pycharm 安装
  14. 第三章CDMA的原理和应用(1)
  15. 软件开发模型-螺旋模型
  16. 【JAVA】数据结构——二叉树的学习
  17. 国内外优秀公共DNS测评及推荐
  18. 未来智能营销时代到来,人工智能营销系统方兴未艾
  19. w7文件加密提示没启用服务器,win7文件夹设置密码没有密钥提示该怎么解决
  20. 为什么说阿里云和亚马逊云对比,阿里云的性价比比较低?

热门文章

  1. S5PV210的内存映射
  2. 5年前我在博客中写的三目运算符的空指针问题,终于被阿里巴巴开发手册收录了。...
  3. 26岁创造UNIX的编程大佬,退休后却成为一名飞行员
  4. 我要带徒弟学写JAVA架构,引路架构师之路
  5. 安装eclipse的JRebel6.4.3的插件
  6. 分享一个JAVA专业接口开发利器,牛牛牛新鲜出炉!!!
  7. SPA 单页Web应用
  8. JEECG v2与v3两个版本的区别说明
  9. TensorFlow载入VGG并可视化每层
  10. 数据结构基础(13) --链式栈的设计与实现