nyoj 36

时间:2022-02-21 00:21:38

//这一题是  nyoj 36  是一道求最长公共子序列的题,也是用dp做出来的

核心代码也就是一句,题目大概思路是先找到两组字符串里面相同的字母

在二维数组里面更新每次比较过后dp的值,空想很难理解,自己在纸上画画就知道了

实在不行就把那段代码记下来。。。

还有我一直都不明白为什么我把dp数组放在主函数和while里面

编译不过,而且我一直都怀疑二维数组没赋初值,可以显示初始值,那还要memset干嘛呢。。。。

#include <iostream>
#include <string.h>
#define Max(a,b) a>b?a:b
using namespace std;int dp[1000][1000];
int main()
{
int i,j,t,len1,len2;
cin>>t;
while(t--)
{
char a[1000],b[1000]; cin>>a;
cin>>b;
len1=strlen(a);
len2=strlen(b);
// for(i=0;i<len1;cout<<endl,i++)
// for(j=0;j<len2;j++)
// cout<<dp[i][j]<<" ";
for(i=0;i<len1;i++)
for(j=0;j<len2;j++)
dp[i+1][j+1]=((a[i]==b[j])?dp[i][j]+1:Max(dp[i+1][j],dp[i][j+1]));
cout<<dp[len1][len2]<<endl;
}
return 0;
}

nyoj 36的更多相关文章

  1. 最长公共子串 NYOJ 36

    http://acm.nyist.net/JudgeOnline/problem.php?pid=36 最长公共子序列 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 ...

  2. NYOJ 36 LCS(最长公共子序列)

    题目链接: http://acm.nyist.edu.cn/JudgeOnline/problem.php?pid=36 最长公共子序列 时间限制:3000 ms  |  内存限制:65535 KB ...

  3. nyoj 36 最长公共子序列【LCS模板】

    最长公共子序列 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 咱们就不拐弯抹角了,如题,需要你做的就是写一个程序,得出最长公共子序列.tip:最长公共子序列也称作最 ...

  4. nyoj 36 最长公共子序列

    描述 咱们就不拐弯抹角了,如题,需要你做的就是写一个程序,得出最长公共子序列. tip:最长公共子序列也称作最长公共子串(不要求连续),英文缩写为LCS(Longest Common Subseque ...

  5. NYOJ 36 最长公共子序列 &lpar;还是dp&rpar;

    这个好多算法书上都有,不仅限于<算法导论> 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描写叙述 咱们就不拐弯抹角了,如题.须要你做的就是写一个程序,得出最长公 ...

  6. nyoj 题目36 最长公共子序列

    最长公共子序列 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 咱们就不拐弯抹角了,如题,需要你做的就是写一个程序,得出最长公共子序列.tip:最长公共子序列也称作最 ...

  7. nyoj 737 石子合并 http&colon;&sol;&sol;blog&period;csdn&period;net&sol;wangdan11111&sol;article&sol;details&sol;45032519

    http://blog.csdn.net/wangdan11111/article/details/45032519 http://acm.nyist.net/JudgeOnline/problem. ...

  8. NYOJ 1007

    在博客NYOJ 998 中已经写过计算欧拉函数的三种方法,这里不再赘述. 本题也是对欧拉函数的应用的考查,不过考查了另外一个数论基本定理:如何用欧拉函数求小于n且与n互质所有的正整数的和. 记eule ...

  9. NYOJ 998

    这道题是欧拉函数的使用,这里简要介绍下欧拉函数. 欧拉函数定义为:对于正整数n,欧拉函数是指不超过n且与n互质的正整数的个数. 欧拉函数的性质:1.设n = p1a1p2a2p3a3p4a4...pk ...

随机推荐

  1. erlang 虚机crash

    现网服务,每次更新一个服务时,另外一个集群所有node 都跟着同时重启一遍,这么调皮,这是闹哪样啊.. 看系统日志:/var/log/messages Oct 30 15:19:41 localhos ...

  2. Spring IOC容器创建对象的方式

    一.无参构造函数创建                                                                            我们用Spring创建Stu ...

  3. lbs basic mongodb

    MongoDB地理位置索引常用的有两种. db.places.ensureIndex({'coordinate':'2d'}) db.places.ensureIndex({'coordinate': ...

  4. HDU 4162 &Tab;Shape Number(字符串,最小表示法)

    HDU 4162 题意: 给一个数字串(length <= 300,000),数字由0~7构成,求出一阶差分码,然后输出与该差分码循环同构的最小字典序差分码. 思路: 第一步是将差分码求出:s[ ...

  5. FFmpeg的H&period;264解码器源代码简单分析:宏块解码(Decode)部分-帧间宏块(Inter)

    ===================================================== H.264源代码分析文章列表: [编码 - x264] x264源代码简单分析:概述 x26 ...

  6. &lbrack;Swift&rsqb;LeetCode100&period; 相同的树 &vert; Same Tree

    Given two binary trees, write a function to check if they are the same or not. Two binary trees are ...

  7. LeetCode167&period;两数之和II-输入有序数组

    给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数. 函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2. 说明: 返回的下标值 ...

  8. C&plus;&plus;模板源代码的三种组织方式

    模板代码和非模板代码是有区别的,如果像非模板代码那样把模板的声明放在头文件.h中,把模板的定义放在源文件.cpp中,那么使用这个模板时会得到一个链接错误.这个错误的原因在于,模板的定义还没有被实例化. ...

  9. transform Vs Udf

    在鞋厂的第一个任务,拆表.需要把订单表按照开始日期和结束日期拆分成多条记录,挺新鲜的~ transform方式,使用到了python. (1)把hive表的数据传入,通过python按照日期循环处理, ...

  10. js取得前2位字符

    <label id="ab">0</label> <script language="javascript"> url=&q ...