题目2268:蓝桥杯2016年第七届真题-密码脱落

代码思路

代码采用的是**最长公共子序列(LCS)**的思路:

  1. 将原字符串反转得到新字符串

  2. 求原字符串和反转字符串的最长公共子序列长度

  3. 答案 = 原字符串长度 - 最长公共子序列长度

#include<iostream>

#include<string>

#include<cstring>

#include<algorithm>

using namespace std;

int dp10021002;//表示s的前i个字符和r的前j个字符的LCS长度

string s;//原始字符串

char r1002;//存放反转后的字符串

int k;

int main(){

cin>>s;

//将原始字符串反转,存放到r数组

for(int i=s.length()-1;i>=0;i--){

rk++=si;

}

//求最长公共子序列

for(int i=1;i<=s.length();i++){//i遍历原字符串每个字符

for(int j=1;j<=strlen(r);j++){//j遍历反转后的字符串

if(si-1==rj-1){

dpij=dpi-1j-1+1;

}else{

dpij=max(dpi-1j,dpij-1);

}

}

}

cout<<s.length()-dps.length()strlen(r)<<endl;

return 0;

}

相关推荐
fpcc3 分钟前
工具使用——CMake中的函数和宏
c++·cmake
金融小师妹18 分钟前
AI因子共振模型显示:金银比突破区间上沿,白银定价逻辑进入再校准阶段
人工智能·算法·均值算法·线性回归
不会就选b18 分钟前
数据结构之链表OJ题(中)
数据结构·链表
J2虾虾28 分钟前
C语言 typedef 用法
c语言·数据结构·算法
hunterkkk(c++)36 分钟前
线段树例题
算法
乐观勇敢坚强的老彭38 分钟前
C++信息学奥赛lesson1
java·开发语言·c++
故渊at1 小时前
第二板块:Android 四大组件标准化学理 | 第七篇:Activity 页面载体与任务栈算法
android·算法·生命周期·activity·任务栈
Irissgwe1 小时前
C++ STL关联式容器详解:set、multiset、map、multimap
开发语言·c++·stl·set·map·multiset·关联式容器
兰令水1 小时前
leecodecode【区间DP+树形DP】【2026.6.10打卡-java版本】
java·算法·leetcode
Irissgwe1 小时前
string类的模拟实现
c++·string