news 2026/1/23 10:00:41

预存子序列

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
预存子序列

lc1458

两个序列dp 移动i j

二维dp: dp[i][j] 表示 nums1 前i个元素和 nums2 前j个元素的最大点积

“不取nums1当前元素、不取nums2当前元素、取两者当前元素(累加或单独取)”四种转移取最大值,最终得到两个数组子序列的最大点积

class Solution {
public:
int maxDotProduct(vector<int>& nums1, vector<int>& nums2)
{
int m=nums1.size(),n=nums2.size();
vector<vector<int>> dp(m+1,vector<int>(n+1,-0x3f3f3f3f));//找最大 自身要初始化最小

for(int i=1;i<=m;i++)
{
for(int j=1;j<=n;j++)
{
//四种转移取最大
dp[i][j]=max(dp[i][j-1],max(dp[i-1][j-1]+nums1[i-1]*nums2[j-1],dp[i-1][j]));

dp[i][j]=max(dp[i][j],nums1[i-1]*nums2[j-1]);
}
}
return dp[m][n];

}
};

二分+滑窗

先对数组排序,二分猜答案:可能的中位数

滑窗统计“长度≥m的子数组中,中位数≥当前枚举值”的可行性(即子数组中≥该值的元素数≥中位数位置所需数量),最终找到最大的可行中位数。

lc2565

前后缀分解+预存最长子序列

ans = min(ans, (int)t.size() - a - b);

前缀数组记录s前i位能匹配t的最长前缀

后缀数组记录s后i位能匹配t的最长后缀

遍历合并两侧匹配长度,取t未被匹配的最短长度即答案

/*
令 left 为删除字符中的最小下标。
令 right 为删除字符中的最大下标。
字符串的得分为 right - left + 1 。
尽可能长的 连续保留拼接 t左右
*/

class Solution {
public:
int minimumScore(string s, string t) {
int n = s.size();
vector<int> l(n,0), r(n,0);
int p = 0;
for (int i = 0; i < s.size(); i++)
{
if (p<t.size()&&s[i] == t[p])
p++;
l[i] = p;
}
p = t.size() - 1;
for (int i = s.size() - 1; i >= 0; i--)
{
if (p >= 0 && s[i] == t[p])
p--;
r[i] = t.size() - 1 - p;
}
int ans = 1e9;
for (int i = 0; i < n-1; i++)
{
int a = l[i], b = r[i + 1];
if (a + b >= t.size())
return 0;
ans = min(ans, (int)t.size() - a - b);
}
ans = min(ans, (int)t.size()-r[0]);
ans = min(ans, (int)t.size()-l[n - 1]);
return ans;
}
};

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/8 11:00:30

AI内容降重实战:十大官网推荐工具测评与核心方法论

核心工具对比速览 工具名称 核心功能 适用场景 处理速度 特色优势 aibiye 降AIGC率查重 学术论文优化 20分钟 适配知网/格子达/维普规则 aicheck AIGC检测 风险区域识别 实时 可视化热力图报告 askpaper 学术内容优化 论文降重 20分钟 保留专业术语 秒篇 …

作者头像 李华
网站建设 2026/1/8 10:59:44

边缘计算场景:轻量级MGeo服务部署方案

边缘计算场景&#xff1a;轻量级MGeo服务部署方案 在物联网项目中&#xff0c;经常需要在边缘设备上运行地址识别功能&#xff0c;但边缘设备的计算能力往往有限。MGeo作为达摩院与高德联合推出的地理地址自然语言处理模型&#xff0c;能够高效完成地址要素解析、相似度匹配等任…

作者头像 李华
网站建设 2026/1/21 12:06:09

LISTAGG vs 传统方法:字符串聚合效率提升300%

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个性能对比测试&#xff0c;比较Oracle中三种字符串聚合方法&#xff1a;1) LISTAGG函数 2) 使用游标和循环 3) XML PATH方法。要求&#xff1a;a) 生成测试数据表(10000条记…

作者头像 李华
网站建设 2026/1/20 19:16:46

如何用AI快速诊断TLS客户端凭据错误10013

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个TLS错误诊断工具&#xff0c;能够自动检测系统环境&#xff1a;1. 扫描Windows注册表中SCHANNEL相关配置项 2. 检查本地证书存储的权限设置 3. 验证系统加密服务提供程序(…

作者头像 李华
网站建设 2026/1/12 1:18:12

弹性计算实践:应对地址处理高峰期的技巧

弹性计算实践&#xff1a;应对地址处理高峰期的技巧 在电商业务中&#xff0c;地址校验服务是一个典型的"潮汐型"业务场景。促销期间订单量激增&#xff0c;地址校验请求可能增长10倍以上&#xff0c;而平时资源又大量闲置。本文将分享如何利用弹性计算架构解决这一…

作者头像 李华