2024.1.11每日一题

LeetCode

2645.构造有效字符串的最少插入数

2645. 构造有效字符串的最少插入数 - 力扣(LeetCode)

题目描述

给你一个字符串 word ,你可以向其中任何位置插入 “a”、“b” 或 “c” 任意次,返回使 word 有效 需要插入的最少字母数。

如果字符串可以由 “abc” 串联多次得到,则认为该字符串 有效

示例 1:

输入:word = "b"
输出:2
解释:在 "b" 之前插入 "a" ,在 "b" 之后插入 "c" 可以得到有效字符串 "abc" 。

示例 2:

输入:word = "aaa"
输出:6
解释:在每个 "a" 之后依次插入 "b" 和 "c" 可以得到有效字符串 "abcabcabc" 。

示例 3:

输入:word = "abc"
输出:0
解释:word 已经是有效字符串,不需要进行修改。 

提示:

  • 1 <= word.length <= 50
  • word 仅由字母 “a”、“b” 和 “c” 组成。

思路

动态规划

力扣官方题解

链接:https://leetcode.cn/problems/minimum-additions-to-make-valid-string/solutions/2590673/gou-zao-you-xiao-zi-fu-chuan-de-zui-xiao-vfaf/

image-20240111080846292

代码

C++
class Solution {
public:int addMinimum(string word) {int n = word.size();vector<int> d(n + 1);for(int i = 1; i <= n; i++){d[i] = d[i - 1] + 2;if(i > 1 && word[i - 1] > word[i - 2]){d[i] = d[i - 1] - 1;}}return d[n];}
};
Java
class Solution {public int addMinimum(String word) {int n = word.length();int[] d = new int[n + 1];for(int i = 1; i <= n; i++){d[i] = d[i - 1] + 2;if(i > 1 && word.charAt(i - 1) > word.charAt(i - 2)){d[i] = d[i - 1] - 1;}}return d[n];}
}

image-20240111080944842

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

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

相关文章

进程、线程、协程的对比、区别和联系,进程之间的通信方式、线程之间的通信方式、协程之间的通信方式

前言 之前的一篇文章曾写过一些关于进程、线程、协程的内容——进程、线程、协程… … ——任务管理器的性能里都有什么&#xff1f;那么多的线程&#xff0c;进程、线程、句柄都是什么&#xff1f; 但对其之间的通信方式还是没有太过详细了解&#xff0c;因此特写此&#xf…

【LeetCode每日一题】2645. 构造有效字符串的最少插入数(计算组数+动态规划+考虑相邻字母)

2024-1-11 文章目录 [2645. 构造有效字符串的最少插入数](https://leetcode.cn/problems/minimum-additions-to-make-valid-string/)方法一&#xff1a;计算组数方法二&#xff1a;动态规划方法三: 考虑相邻字母 2645. 构造有效字符串的最少插入数 方法一&#xff1a;计算组数 …

【IC设计】ICer‘s 乾坤大挪移——FSM状态机

目录 理论解读写几段式状态机&#xff1f; 设计实战两种state的FSM&#xff08;异步复位&#xff09; 理论解读 写几段式状态机&#xff1f; 设计实战 两种state的FSM&#xff08;异步复位&#xff09; 实现下图所示的摩尔状态机&#xff0c;复位为异步复位。 代码实现&am…

多无人机编队飞行

matlab2020可运行 GitHub - Zhao-Jichao/Distributed_optimal_-formation_control_of_heterogeneous_multi-agent_systems_with_mixed-orders: 异构混合阶多智能体系统编队控制的分布式优化

【添加墨水注意事项]

添加墨水注意事项 当液位灯亮起时请添加墨水&#xff0c;添加墨水应时戴好护目镜和手套.注意墨水不要洒在设备注意墨水要避光保护防止固化 请使用本公司配套专用墨水&#xff0c;添加时注意墨水颜色 禁止儿童接触墨水及容器&#xff0c;如不慎接触眼睛或者误服应立即以大量清…

安全漏洞周报(2024.01.01-2023.01.08)

漏洞速览 ■ 用友CRM系统存在逻辑漏洞 漏洞详情 1. 用友CRM系统存在逻辑漏洞 漏洞介绍&#xff1a; 某友CRM系统是一款综合性的客户关系管理软件&#xff0c;旨在帮助企业建立和维护与客户之间的良好关系。它提供了全面的功能&#xff0c;包括销售管理、市场营销、客户服…

K8S 存储卷

意义&#xff1a;存储卷----数据卷 容器内的目录和宿主机的目录进行挂载 容器在系统上的生命周期是短暂的&#xff0c;delete,k8s用控制器创建的pod&#xff0c;delete相当于重启&#xff0c;容器的状态也会回复到初始状态 一旦回到初始状态&#xff0c;所有的后天编辑的文件…

机器人制作开源方案 | 乒乓球自动拾取机器人

作者&#xff1a;刘众森、王森、王绘东、崔岳震、宋维鑫 单位&#xff1a;山东农业工程学院 指导老师&#xff1a;潘莹月、廖希杰 1. 场景调研 我们小组选择项目的任务方向乒乓球的捡取与存放&#xff0c;针对此问题我们研发了一款乒乓球自动拾取机器人。众所周知&#xff0…

序列模型(4)—— Scaling Laws

本文介绍 LLM 训练过程中重要的 Scaling Laws&#xff0c;这是一个经验规律&#xff0c;指出了固定训练成本&#xff08;总计算量FLOPs&#xff09; C C C 时&#xff0c;如何调配模型规模&#xff08;参数量&#xff09; N N N 和训练 Token 数据量 D D D&#xff0c;才能实现…

提升测试多样性,揭秘Pytest插件pytest-randomly

大家可能知道在Pytest测试生态中&#xff0c;插件扮演着不可或缺的角色&#xff0c;为开发者提供了丰富的功能和工具。其中&#xff0c;pytest-randomly 插件以其能够引入随机性的特性而备受欢迎。本文将深入探讨 pytest-randomly 插件的应用&#xff0c;以及如何通过引入随机性…

Untiy HTC Vive VRTK 开发记录

目录 一.概述 二.功能实现 1.模型抓取 1&#xff09;基础抓取脚本 2&#xff09;抓取物体在手柄上的角度 2.模型放置区域高亮并吸附 1&#xff09;VRTK_SnapDropZone 2&#xff09;VRTK_PolicyList 3&#xff09;VRTK_SnapDropZone_UnityEvents 3.交互滑动条 4.交互旋…

云端建模:开启三维重建的全新时代

在数字化时代的浪潮下&#xff0c;建筑设计和地理信息科学领域正迎来一场前所未有的变革。云端建模作为一项创新技术&#xff0c;以其强大的能力和创造性的方法&#xff0c;正开启着实景三维建模与倾斜摄影三维重建的全新时代。这一时代不仅为测绘工程师、设计师和决策者带来了…