作者:翟天保Steven
版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处

题目描述:

给定两个只包含小写字母的字符串,计算两个字符串的最大公共子串的长度。

注:子串的定义指一个字符串删掉其部分前缀和后缀(也可以不删)后形成的字符串。

输入描述:

输入两个只包含小写字母的字符串

输出描述:

输出一个整数,代表最大公共子串的长度

示例:

输入:

asdfas
werasdfaswer

输出:

6

解题思路:

本题可以用动态规划做。首先,建立一个二分表,首行首列均设为0,因为字符串无字符即匹配0个;从第二行开始遍历,若i行字符和j列字符一致,则表当前位置值为i-1行j-1列数值+1,并实时分析最大值;遍历完成后最大值即最大公共子串长度。

测试代码:

#include <iostream>
#include <string>
#include <vector>using namespace std;int main()
{string s1,s2;while(cin>>s1>>s2){vector<vector<int>> m(s1.size()+1,vector<int>(s2.size()+1,0));int max=0;for(int i=1;i<=s1.size();++i){for(int j=1;j<=s2.size();++j){if(s1[i-1]==s2[j-1]){m[i][j]=m[i-1][j-1]+1;if(m[i][j]>max){max=m[i][j];}}}}cout<<max<<endl;}return 0;
}

华为机试HJ75:公共子串计算相关推荐

  1. 华为机试 - 寻找相同子串

    题目描述 给你两个字符串t和p,要求从t中找到一个和p相同的连续子串,并输出该子串第一个字符的下标. 输入描述 输入文件包括两行 分别表示字符串t和p 保证t的长度不小于p 且t的长度不超过10000 ...

  2. 【华为机试】火星文计算

    题目描述: 已知火星人使用的运算符为#.$,其与地球人的等价公式如下: x#y = 2x+3y+4 x$y = 3*x+y+2 其中x.y是无符号整数 地球人公式按C语言规则计算 火星人公式中,$的优 ...

  3. 牛客在线编程-华为机试-中等

    牛客在线编程题目-华为机试-中等 题号 题目 知识点 难度 通过率 HJ16 购物单 动态规划 中等 21.21% HJ17 坐标移动 字符串 中等 24.79% HJ20 密码验证合格程序 数组 字 ...

  4. 华为机试108题(C 语言解答)

    Nowcoder题库链接:华为机试 HJ1 字符串最后一个单词的长度(字符串) 输入:hello nowcoder输出:8说明: 最后一个单词为nowcoder,长度为8 示例代码: HJ1.c #i ...

  5. 【HUAWEI】华为机试试题-105

    LeeCode试题链接直接上 HJ1 字符串最后一个单词的长度 HJ2 计算某字符出现次数 HJ3 明明的随机数:随机数去重排序输出(小-大) HJ4 字符串分隔:输入一个字符串,请按长度为8拆分每个 ...

  6. 牛客网--华为机试在线训练2:计算字符个数

    牛客网–华为机试在线训练2:计算字符个数 题目描述 写出一个程序,接受一个有字母和数字以及空格组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数.不区分大小写. 输入描述: 输入一个有字母 ...

  7. 【华为机试】HJ2 计算某字符出现次数

    [华为机试]HJ2 计算某字符出现次数 ## [华为机试]HJ2 计算某字符出现次数 ## [华为机试]HJ2 计算某字符出现次数 ## [华为机试]HJ2 计算某字符出现次数 ## [华为机试]HJ ...

  8. 华为机试:最长的指定瑕疵度的元音子串

    题目来源 华为机试:最长的指定瑕疵度的元音子串 题目描述 题目解析 滑动窗口太容易出错了 我们把它想象成一个队列,无脑往queue中塞元素,并且记录非元音的个数,当非元音的个数等于flow个时,记录最 ...

  9. 华为机试 计算加减乘除数学表达式的结果

    源   代码链接http://codepad.org/s7KRVYiV #include <stdlib.h> #include <stdio.h> #include < ...

最新文章

  1. 响应式注意要添加“视口”约束标记---viewport
  2. 【算法与数据结构】一道检测inversion count的初级算法
  3. 数据对比国内外电影票房,国产剧差在哪?
  4. SVG.js 基础图形绘制整理(二)
  5. 射雕三部曲的优美片段
  6. PHP 数据库 ODBC
  7. 关闭uboot MMU 会导致android2.3 S5pv210 系统不稳定?!why
  8. 【最全PPT下载+直播回放】DTCC 2019:阿里云数据库8大要点精彩回顾
  9. mysql 傻瓜式管理_傻瓜式教学【数据库管理工具Navicat】
  10. EF:oracle的number类型映射为C#的boolean类型
  11. mysql-5.5.38_MySQL-5.5.38通用二进制安装
  12. PHP中的e标签和em标签一样吧,html em标签的作用
  13. 第 4 周 关于 startActivityForResult
  14. EDEM中对几何体(机械设备)表面的精确受力分析
  15. 分享一个奇葩SM2258XT板子(100-H00112581-590)没有CE跳线,只有CE飞线,顺便量产开卡
  16. python函数的位置参数(Positional)和关键字参数(keyword)
  17. (C++)整型数组A[n]中的元素调整为左右两部分,其中左边所有元素为奇数,右边所有元素为偶数。时间复杂度为O(n)。
  18. 使用GoLang开发游戏服务器(一)
  19. php 合成微信头像,PHP 图片合成、仿微信群头像的方法示例
  20. jquery图片放大镜插件—jqzoom

热门文章

  1. 21、List遍历时修改元素的问题
  2. Session何时创建实例
  3. 用jquery插件写一个小米官网左侧二级菜单
  4. hadoop上传文件报错
  5. CentOS Mysql安装配置
  6. centos7提示ifconfig command not found解决
  7. apache2.4.18中启用h2c
  8. MySQL查询数据表中数据记录(包括多表查询)
  9. MapReduce的模式、算法和用例
  10. C++程序的构成和书写形式