当前位置: 首页 > article >正文

13-动态规划-最长公共子序列

题目

来源

24. 最长公共子序列

思路

不想打字,援引自最长公共子序列 (LCS) 详解+例题模板(全)-CSDN博客

图示举例:

其余详见代码

代码

#include<bits/stdc++.h>
using namespace std;
const int N=110;
int f[N][N];
int main(){
    string a,b;
    while(cin>>a>>b){
        for(int i=1;i<=a.size();i++){ //由于下标是从1开始,故下面的条件判等需要处理一下
            for(int j=1;j<=b.size();j++){
                if(a[i-1]==b[j-1]){
                    f[i][j]=f[i-1][j-1]+1;
                }else{
                    f[i][j]=max(f[i-1][j],f[i][j-1]);
                }
            }
        }
        cout<<f[a.size()][b.size()]<<endl;//下标从1开始,故可以这么使用,否则下标应该-1

    }
    return 0;
}

http://www.kler.cn/a/592593.html

相关文章:

  • CVPR2025 | TAPT:用于视觉语言模型鲁棒推理的测试时对抗提示调整
  • C++学习笔记(二十三)——STL标准库
  • 握手问题 第十五届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组
  • 通过C#脚本更改材质球的参数
  • Flutter TextField 从入门到精通:掌握输入框的完整指南
  • 【链表】一文搞定链表算法:从基础到实战
  • 在线教育网站项目第四步:deepseek骗我, WSL2不能创建两个独立的Ubuntu,但我们能实现实例互访及外部访问
  • 记:app启动更换系统语言,app会重走生命周期
  • 【vue3+vant】移动端 - 部门树下拉选择组件 DeptTreeSelect 开发
  • rip 协议详细介绍
  • vue 中常用操作数组的方法
  • 【Python 的发展历史】
  • 【2025】基于Springboot + vue实现的毕业设计选题系统
  • 优选算法系列(2.滑动窗口_下)
  • C语言每日一练——day_12(最后一天)
  • 【江协科技STM32】软件I2C协议层读写MPU6050驱动层
  • 动态代理示例解析
  • 3.19学习总结
  • 递归分治法格雷码
  • 刷题练习笔记