Leetcode 712. Minimum ASCII Delete Sum for Two Strings

Problem

Given two strings s1 and s2, return the lowest ASCII sum of deleted characters to make two strings equal.

Algorithm

Dynamic Programming (DP): similar as Longest Common Subsequence (LCS).

  • If s1[i] != s2[j]:
    F ( i , j ) = min ⁡ ( F ( i − 1 , j ) + cost ( s 1 [ i ] ) , F ( i , j − 1 ) + cost ( s 2 [ j ] ) ) F(i, j) = \min \left( F(i-1, j) + \text{cost}(s1[i]), \, F(i, j-1) + \text{cost}(s2[j]) \right) F(i,j)=min(F(i1,j)+cost(s1[i]),F(i,j1)+cost(s2[j]))

  • If s1[i] == s2[j]:
    F ( i , j ) = F ( i − 1 , j − 1 ) F(i, j) = F(i-1, j-1) F(i,j)=F(i1,j1)

Code

class Solution:def minimumDeleteSum(self, s1: str, s2: str) -> int:l1, l2 = len(s1) + 1, len(s2) + 1dp = [[0] * l2 for _ in range(l1)] for i in range(1, l1):dp[i][0] = dp[i-1][0] + ord(s1[i-1])for j in range(1, l2):dp[0][j] = dp[0][j-1] + ord(s2[j-1])for i in range(1, l1):for j in range(1, l2):if s1[i-1] == s2[j-1]:dp[i][j] = dp[i-1][j-1]else:dp[i][j] = min(dp[i-1][j] + ord(s1[i-1]), dp[i][j-1] + ord(s2[j-1]))return dp[l1-1][l2-1]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/71152.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Python 学习 / 4】基本数据结构之 字符串 与 集合

文章目录 1. 字符串概念1.1 字符串的创建1.2 字符串的访问和操作1.2.1 下标访问1.2.2 切片操作1.2.3 字符串的拼接和重复1.2.4 字符串的长度 1.3 字符串的方法1.4 字符串的查找和替换1.5 字符串格式化1.5.1 使用 % 运算符1.5.2 使用 str.format()1.5.3 使用 f-string&#xff0…

Spring Boot (maven)分页3.0版本 通用版

前言: 通过实践而发现真理,又通过实践而证实真理和发展真理。从感性认识而能动地发展到理性认识,又从理性认识而能动地指导革命实践,改造主观世界和客观世界。实践、认识、再实践、再认识,这种形式,循环往…

OpenAI 放王炸,将发布整合多项技术的 GPT-5,并免费无限使用,该模型有哪些技术亮点

对于 ChatGPT 的免费用户,将可以无限制地访问 GPT-5,但仅限于标准的智能级别。该级别会设定滥用限制,以防止不当使用(意思就是你得付费嘛)。 OpenAI CEO Sam Altman 今天在 X 上透露了 GPT-4.5 和 GPT-5 的最新发展计划。 OpenAI 将发布代…

git pull 与 git pull --rebase的区别与使用

git pull 与 git pull --rebase的区别与使用 1. 优化commit很乱的记录1.1 解决问题例子 1.2 idea 中更新代码 1. 优化commit很乱的记录 课程:优化Commit记录 之前遇到过这个问题,已知没当回事,现在想做出改变,正好B站有个视频&am…

Web3 开发者周刊 36 | 构建自主未来:Agent、可扩展性与赏金

欢迎来到 Web3 开发者周刊 36,这里汇聚了赋能您的 Web3 构建之旅的各种资源。本周我们将剖析基于Agent的系统,讨论来自 Vitalik 关于以太坊 L1 和 L2 的最新思考,并提供最新高价值Bounty消息。 开始Build吧! ✅ One Trillion Age…

[小M全新力作-修稿]PFC_LLC电源设计全攻略:从原理学习到SIMULINK仿真到EDA板实战,再到实物电源调试

未完结 可私信获取手稿以详细理解本文 LLC __2025.1.13 MOS ZVS ZCS 重锁粥支,MOS管由于设计工艺,总会产生一些寄生元件如:寄生电容(pf级)、寄生电阻、寄生二极管等 由于这些MOS参数,会导致MOS的导通…

VNC远程控制Mac

前言 macOS系统自带有VNC远程桌面,我们可以在控制端上安装配置VNC客户端,以此来实现远程控制macOS。但通常需要在不同网络下进行远程控制,为此,我们可以在macOS被控端上使用cpolar做内网穿透,映射VNC默认端口5…

关闭浏览器安全dns解决访问速度慢的问题

谷歌浏览器加载速度突然变慢了?检查安全DNS功能(DoH)是否被默认开启。 谷歌浏览器在去年已经推出安全DNS功能(即DoH) , 启用此功能后可以通过加密的DNS增强网络连接安全性。例如查询请求被加密后网络运营商将无法嗅探用户访问的地址,因此对于增强用户的…

ES分词技术

Elasticsearch(ES)的搜索功能依赖于分词技术,分词是将文本拆分为单个词或词项的过程,直接影响搜索的准确性和效率。以下是ES中分词技术的详细介绍: 1. 分词器(Analyzer) 分词器是分词的核心组…

SpringBoot3 快速启动框架

文章目录 1 SpringBoot3 介绍 1.1 SpringBoot3 简介1.2 快速入门1.3 入门总结 2 SpringBoot3 配置文件 2.1 统一配置管理概述2.2 属性配置文件使用2.3 YAML配置文件使用2.4 批量配置文件注入2.5 多环境配置和使用 3 SpringBoot 整合 springMVC 3.1 实现过程3.2 web相关配置3.3…

小小小病毒(3)(~_~|)

一分耕耘一分收获 声明: 仅供损害电脑,不得用于非法。损坏电脑,作者一律不负责。此作为作者原创,转载请经过同意。 欢迎来到小小小病毒(3) 感谢大家的支持 还是那句话:上代码! …

Map 和 Set

目录 一、搜索 概念: 模型: 二、Map ​编辑 1.Map 实例化: 2. Map的常见方法: 3.Map的常见方法演示: 1. put(K key, V value):添加键值对 3. containsKey(Object key):检查键是否存在 4.…

pytest测试专题 - 2.1 一种推荐的测试目录结构

<< 返回目录 1 pytest测试专题 - 2.1 一种推荐的测试目录结构 2 pytest 项目目录结构及文件功能 以下是典型 pytest 项目中常见的文件和目录结构及其功能的概述&#xff1a; 2.1 文件/目录结构 文件/目录功能描述test_ 文件* 主测试文件&#xff0c;命名通常以 test_…

常用架构图:业务架构、产品架构、系统架构、数据架构、技术架构、应用架构、功能架构及信息架构

文章目录 引言常见的架构图I 业务架构图-案例模块功能说明1. 用户界面层 (UI)2. 应用服务层3. 数据管理层4. 基础设施层业务流程图示例技术实现II 功能架构图 -案例功能模块说明1. 船舶监控模块2. 报警管理模块3. 应急响应模块4. 通信管理模块5. 数据分析模块数据管理层基础设施…

爬虫实战:利用代理ip爬取推特网站数据

引言 亮数据-网络IP代理及全网数据一站式服务商屡获殊荣的代理网络、强大的数据挖掘工具和现成可用的数据集。亮数据&#xff1a;网络数据平台领航者https://www.bright.cn/?promoRESIYEAR50/?utm_sourcebrand&utm_campaignbrnd-mkt_cn_csdn_yingjie202502 在跨境电商、社…

蓝桥杯篇---温度传感器 DS18B20

文章目录 前言DS18B201. DS18B20 引脚说明2. 单总线通信协议3. DS18B20 操作流程初始化写操作读操作 4. 示例代码5. 代码说明6. 注意事项总结 前言 本文简单介绍了IAP15F2K61S2中温度传感器模块DS18B20的使用。 DS18B20 DS18B20 是一款数字温度传感器&#xff0c;采用单总线&…

YOLOv5-Seg 深度解析:与 YOLOv5 检测模型的区别

YOLOv5-Seg 深度解析&#xff1a;与 YOLOv5 检测模型的区别 1. 概述 YOLOv5 是一个强大的目标检测框架&#xff0c;而 YOLOv5-Seg 是其扩展版本&#xff0c;增加了实例分割功能。 YOLOv5&#xff08;目标检测&#xff09; vs YOLOv5-Seg&#xff08;实例分割&#xff09; 版…

传感器篇(一)——深度相机

目录 一 概要 二 原理 三 对比 四 产品 五 结论 一 概要 深度相机是一种能够获取物体深度信息的设备&#xff0c;相较于普通相机只能记录物体的二维图像信息&#xff0c;深度相机可以感知物体与相机之间的距离&#xff0c;从而提供三维空间信息。在你正在阅读的报告中提到…

docker部署单机版doris,完整无坑

文章目录 一、部署1、修改内核参数2、下载Docker 开发环境镜像3、下载安装包4、启动镜像5、配置fe6、配置be7、远程连接 二、运维命令参考资料 一、部署 1、修改内核参数 在启动doris的be时&#xff0c;需要将 Linux 操作系统的内核参数设置为2000000&#xff0c;这里是Doris…

二叉树(C语言版)

文章目录 二叉树完全二叉树和满二叉树二叉搜索树基本操作实现代码运行结果 分析红黑树2-3-4树(理论模型)红黑树(实际实现) 二叉树 树是一种层次结构&#xff0c;它在现实生活中是广泛存在的&#xff0c;比如&#xff1a;族谱(family tree)&#xff0c;组织机构&#xff0c;目录…