UVA111 LCS
//
// main.cpp
// uva111
//
// Created by 丁宇阳 on 15-6-2.
// Copyright (c) 2015年 丁宇阳. All rights reserved.
//#include <cstdio>
#include<algorithm>
using namespace std;
int main() {int len;scanf("%d",&len);int A[30],B[30];for(int i=1;i<=len;i++){int p;scanf("%d",&p);A[p]=i;}int p;while(~scanf("%d",&p)){B[p]=1;int d[30][30];for(int j=2;j<=len;j++){int p;scanf("%d",&p);B[p]=j;}for(int i=0;i<=len;i++)d[i][0]=d[0][i]=0;for(int i=1;i<=len;i++){for(int j=1;j<=len;j++){if(A[i]==B[j]){d[i][j]=d[i-1][j-1]+1;// printf("jia d[%d][%d]=%d\n",i,j,d[i][j]);}else{d[i][j]=max(d[i-1][j],d[i][j-1]);//printf("d[%d][%d]=%d\n",i,j,d[i][j]);}}}printf("%d\n",d[len][len]);}return 0;}
1.首先这题最坑爹的是输入要进行转化,不能直接读取到数组中,他相当于输入1,2,3,4,5。。。。。。的每一个下标
2.这里我采用的是填表法的dp,特点在于相当于给你一张表格,已经有了几个空填上答案了,而且知道规则,要求把所有
的空填满
3.值得注意的是需要初始化的不止0,0和0,1和1,0
4.如果不采用~scanf的读取模式而是while(1)的模式读取B数组,会导致TLE
5.:LCS的转移方程巧妙之处:
1.求最长的公共序列,它并用四重循环A[i]~A[j] B[i']~B[j']
2.从父亲序列的收缩的角度考虑
UVA111 LCS相关推荐
- UVA10192 Vacation【LCS+DP+记忆化递归】
You are planning to take some rest and to go out on vacation, but you really don't know which cities ...
- 奇妙的算法之LCS妙解
LCS算法妙解 LCS问题简述:最长公共子序列 一个数列 S,如果分别是两个或多个已知数列的子序列,且是所有符合此条件序列中最长的,则S 称为已知序列的最长公共子序列. LCS问题的分支:最长公共子串 ...
- 最长公共子序列(LCS)问题 Longest Common Subsequence 与最长公告字串 longest common substr...
问题描述:字符序列的子序列是指从给定字符序列中随意地(不一定连续)去掉若干个字符(可能一个也不去掉)后所形成的字符序列.令给定的字符序列X="x0,x1,-,xm-1",序列Y=& ...
- 1045 Favorite Color Stripe(LCS解法) 需再理解
解题思路 使用LCS方法解这一题,首先要把现有的颜色和Eva的颜色看成即将取材的序列s和e. 而且注意2个序列都要从1开始读入,因为递归边界(待后叙). dp[i][j]代表的是e[1]-e[i]和s ...
- 最长公共子序列(LCS)问题算法详解+例题(转换成LIS,优化为O(nlogn),看不懂你来打我)
目录 最长公共子序列(LCS)问题 1.朴素做法 O(n2)O(n^2)O(n2) 2.转换成LIS优化O(nlogn)O(nlogn)O(nlogn) 3.P2758 编辑距离 最长公共子序列(LC ...
- LCS最长公共子序列和LIS最长上升子序列——例题剖析
一.LCS最长公共子序列 最长公共子序列(LCS)问题算法详解+例题(转换成LIS,优化为O(nlogn),看不懂你来打我) longest comment subsequence 模板题 longe ...
- [LCS]启用WindowsMessenger5.0的调试日志功能来诊断登录LCS服务器
编写者:郑昀@UltraPower 摘要:Windows Messenger 5.0有一个注册表项设置,可以用来启用日志文件,该文件中记录了Windows Messenger 5.0登录LCS Ser ...
- [LCS]半个月的成果,用RTCClient开发的Robot!
项目名称:RTCRobot 项目目的:使用RTCClient开发与LCS通信的问答式机器人!(类似Xiaoi) 开发环境:Windows2003+AD,LiveCommunicationServer, ...
- LCS最大公共子序列【转载】
在两个字符串中,有些字符会一样,可以形成的子序列也有可能相等,因此,长度最长的相等子序列便是两者间的最长公共字序列,其长度可以使用动态规划来求. 以s1={1,3,4,5,6,7,7,8},s2={3 ...
最新文章
- mysql enum mybatis_Mybatis 枚举类处理
- windows窗体(winform)中嵌入显示Excel工作表。
- 当月、 时间_为什么当月增加的固定资产下月计提折旧?点破了,就很容易!...
- html判断整数小数点后两位小数点,js控制input框只能输入数字和一位小数点且小数点后面只有两位小数...
- iText导出pdf,poi导出excel并下载到客户端
- 微软成Eclipse基金会战略伙伴
- hive外部表/内部表路径知识点
- 【机器人】关键问题:动捕原点坐标系到机械臂基坐标系的转换
- infor wms 中英文对照_WMS系统中波次管理有多大作用
- ECharts官网实例
- 【gp数据库】统计常用窗口函数详解
- 在Excel中插入项目符号的基本方法
- 瑞利商(Rayleigh Quotient)及瑞利定理(Rayleigh-Ritz theorem)的证明
- vsphere服务器虚拟化的优点,vmware虚拟化优势_vmware开启虚拟化
- 基于伽马变换自适应修正的全景首尾融合算法
- 软件设计领域没有银弹,但代码大师MaxKanat-Alexander的建议绝对能给你带来启发...
- 辰光融信全面推出基于可信计算3.0技术的安全增强型打印机
- xshell编程自动备份数据库
- 《途客圈创业记:不疯魔,不成活》一一2.7 发布Alpha版本
- PHP 帕斯卡(Pascal)三角形