Coding Caprice - dynamic programming11

server/2024/12/16 13:33:46/

1143. 最长公共子序列

class Solution {
public:int longestCommonSubsequence(string text1, string text2) {int t1 = text1.size();int t2 = text2.size();vector<vector<int>> dp(t1+1, vector<int> (t2+1, 0));for(int i=1; i<t1+1; ++i){for(int j=1; j<t2+1; ++j){if(text1[i-1] == text2[j-1]){dp[i][j] = dp[i-1][j-1] + 1;}else{dp[i][j] = max(dp[i][j-1], dp[i-1][j]);}}}return dp[t1][t2];}
};

1035. 不相交的线

class Solution {
public:int maxUncrossedLines(vector<int>& nums1, vector<int>& nums2) {vector<vector<int>> dp(nums1.size()+1, vector<int> (nums2.size()+1, 0));for(int i=1; i<nums1.size()+1; ++i){for(int j=1; j<nums2.size()+1; ++j){if(nums1[i-1] == nums2[j-1]){dp[i][j] = dp[i-1][j-1] + 1;}else{dp[i][j] = max(dp[i-1][j], dp[i][j-1]);}}}return dp[nums1.size()][nums2.size()];}
};

53. 最大子数组和

class Solution {
public:int maxSubArray(vector<int>& nums) {int out = *max_element(nums.begin(), nums.end());if(out<0){return out;}int startid = 0;while(startid<nums.size() && nums[startid]<0){startid++;}int dp_last = nums[startid];int sum_tmp = 0;int dp = out;for(int i=startid+1; i<nums.size(); ++i){if(nums[i]<0){sum_tmp += nums[i];}else{int tmp = dp_last + nums[i] + sum_tmp;dp = max(tmp, nums[i]);out = max(out, dp);sum_tmp = 0;dp_last = dp;}}return out;}
};
  • 动规只考虑一个方向就可以了

392. 判断子序列

class Solution {
public:bool isSubsequence(string s, string t) {while(s.size()!=0 && t.size()!=0){if(t.back() == s.back()){s.pop_back();}t.pop_back();}return s.size()==0;}
};
  • 投机省事要仔细

http://www.ppmy.cn/server/150642.html

相关文章

mysql常见知识点介绍及解释

以下是一个 MySQL 知识点文档&#xff0c;包含了一些常见的知识点介绍和解释&#xff1a; 一、数据库基础 数据库的概念&#xff1a;数据库是存储数据的仓库&#xff0c;用于管理和组织数据。关系型数据库&#xff1a;MySQL 是一种关系型数据库管理系统&#xff0c;它使用表格…

0002.基于springboot +layui二手物品交易平台

适合初学同学练手项目&#xff0c;部署简单&#xff0c;代码简洁清晰&#xff1b; 注:当前项目架构使用前后端未分离哦&#xff01; 一、系统架构 前端&#xff1a;layui| html 后端&#xff1a;springboot | mybatis-plus 环境&#xff1a;jdk1.8 | mysql | maven 二、代…

CALMM-Drive:首个引入置信度感知的大多模态模型驱动的自动驾驶框架

导读&#xff1a; 本文提出的CALMM-Drive&#xff0c;它是首个引入置信度感知大型多模态模型&#xff08;LMM&#xff09;驱动的自动驾驶框架&#xff0c;通过采用Top-K置信度引导&#xff0c;能够生成多个候选决策及其置信度级别。在nuPlan闭环仿真环境中的评估结果表明&#…

MAC虚拟机上安装WDA环境

MAC虚拟机上安装WDA环境 一、MAC虚拟机切换root权限二、macOS上安装xcode若你的macOS系统可以在appstore下载安装若你安装的macOS系统版本太低&#xff0c;无法在appstore上安装xcode 三、macOS上安装WebDriverAgent四、使用xcode配置WDA安装到手机上高版本系统支持 一、MAC虚拟…

【学一点儿前端】vue3+vite不能使用require引入包的问题(require is not defined)

问题 今天本来想简单敲个码&#xff0c;结果遇到一个报错&#xff1a;require is not defined 原因 查了各方资料&#xff0c;原因如下&#xff1a; 前端有很多的工具包是commonjs的写法&#xff0c;只能用require引入&#xff0c;而vitevue3构建的项目不能使用require&…

第六届地博会开幕,世界酒中国菜美食文化节同期启幕推动地标发展

第六届知交会暨地博会开幕&#xff0c;辽黔欧三地馆亮点纷呈&#xff0c;世界酒中国菜助力地理标志产品发展 第六届知交会暨地博会盛大开幕&#xff0c;多地展馆亮点频出&#xff0c;美食文化节同期启幕推动地标产业发展 12月9日&#xff0c;第六届粤港澳大湾区知识产权交易博…

Idea参数配置

一、 VM options&#xff1a; -server -Xmx1g -Xms512m -Dproject.nameslhy-manager -DSERVER_NAMEslhy-manager -Dproject.profilesdev -Djava.io.tmpdirD:\tmp -Dspring.main.allow-bean-definition-overridingtrue Program arguments&#xff1a; --server.port9100 --s…

Linux的基本功能和命令

Linux的基本功能和命令 切换目录 pwd 查询当前目录地址 cd /xxx/xxx 转到目录 cd …/ 回到上一级目录 cd ./ 当前目录 创建、删除文件/文件夹 创建文件\文件夹 touch filename 创建空文件mkdir 创建目录 mkdir -p 目标目录存在也不报错mkdir -p xxx/xxx 递归创建目录…