《算法闯关指南:优选算法--模拟》--39.替换所有问号,40.提莫攻击

《算法闯关指南:优选算法--模拟》--39.替换所有问号,40.提莫攻击
在这里插入图片描述

🔥草莓熊Lotso:个人主页
❄️个人专栏: 《C++知识分享》《Linux 入门到实践:零基础也能懂》
✨生活是默默的坚持,毅力是永久的享受!


🎬 博主简介:

在这里插入图片描述

文章目录


前言:

聚焦算法题实战,系统讲解三大核心板块:优选算法:剖析动态规划、二分法等高效策略,学会寻找“最优解”。 递归与回溯:掌握问题分解与状态回退,攻克组合、排列等难题。 贪心算法:理解“局部最优”到“全局最优”的思路,解决区间调度等问题 内容以题带点,讲解思路与代码实现,帮助大家快速提升代码能力。

39.替换所有问号

题目链接

1576. 替换所有的问号 - 力扣(LeetCode)

题目描述

在这里插入图片描述


题目示例

在这里插入图片描述

解法(模拟):

算法思路:

就是模拟这个过程就行。从前往后遍历整个字符串,找到问号之后,就用a~z的每一个字符去尝试替换即可。

C++算法代码:

classSolution{public: string modifyString(string s){int n=s.size();for(int i=0;i<n;i++)if(s[i]=='?')for(char ch='a';ch<='z';ch++)if((i==0||ch!=s[i-1])&&(i==n-1||ch!=s[i+1])){ s[i]=ch;break;}return s;}};

算法总结&&笔记展示:

笔记字有点丑,大家见谅:

在这里插入图片描述
在这里插入图片描述

40.提莫攻击

题目链接

495. 提莫攻击 - 力扣(LeetCode)

题目描述:

在这里插入图片描述

题目示例:

在这里插入图片描述

解法(模拟+分情况讨论):

算法思路:

模拟+分情况讨论。
计算相邻两个时间点的差值:

  • 如果差值大于等于中毒时间,说明上次中毒可以持续 duration 秒。
  • 如果差值小于中毒时间,那么上次的中毒只能持续两者的差值

还可以这样想,我们每次加上 min(duration,差值) 就行。

C++算法代码:

代码一:

classSolution{public:intfindPoisonedDuration(vector<int>& timeSeries,int duration){int n=timeSeries.size(),effect=0;for(int i=1;i<n;i++){int sub=timeSeries[i]-timeSeries[i-1];if(sub>=duration) effect+=duration;else effect+=sub;}return effect+duration;}};

代码二:

classSolution{public:intfindPoisonedDuration(vector<int>& timeSeries,int duration){int n=timeSeries.size(),effect=0;for(int i=1;i<n;i++){int sub=timeSeries[i]-timeSeries[i-1]; effect+=min(sub,duration);}//记得加最后一次的return effect+duration;}};

算法总结&&笔记展示:

笔记字有点丑,大家见谅:

在这里插入图片描述


在这里插入图片描述

结尾:

🍓 我是草莓熊 Lotso!若这篇技术干货帮你打通了学习中的卡点: 👀 【关注】跟我一起深耕技术领域,从基础到进阶,见证每一次成长 ❤️ 【点赞】让优质内容被更多人看见,让知识传递更有力量 ⭐ 【收藏】把核心知识点、实战技巧存好,需要时直接查、随时用 💬 【评论】分享你的经验或疑问(比如曾踩过的技术坑?),一起交流避坑 🗳️ 【投票】用你的选择助力社区内容方向,告诉大家哪个技术点最该重点拆解 技术之路难免有困惑,但同行的人会让前进更有方向~愿我们都能在自己专注的领域里,一步步靠近心中的技术目标! 

结语:本文分享了两道LeetCode算法题的解题思路与C++实现:替换所有问号(1576题):通过遍历字符串,对每个问号使用a-z字符尝试替换,确保不与前后字符重复。提莫攻击(495题):计算中毒总时间,通过比较相邻攻击时间差与中毒持续时间,取较小值累加。两题均采用模拟方法解决,代码简洁高效。笔记包含详细思路分析和可视化解题过程,适合算法学习者参考。

✨把这些内容吃透超牛的!放松下吧✨ʕ˘ᴥ˘ʔづきらど

Read more

2026计算机毕业设计源码:基于用户画像的python音乐推荐系统 Django 协同过滤 SVD 分布式计算 数据可视化(建议收藏)✅

2026计算机毕业设计源码:基于用户画像的python音乐推荐系统 Django 协同过滤 SVD 分布式计算 数据可视化(建议收藏)✅

博主介绍:✌全网粉丝10W+,前互联网大厂软件研发、集结硕博英豪成立软件开发工作室,专注于计算机相关专业项目实战6年之久,累计开发项目作品上万套。凭借丰富的经验与专业实力,已帮助成千上万的学生顺利毕业,选择我们,就是选择放心、选择安心毕业✌ > 🍅想要获取完整文章或者源码,或者代做,拉到文章底部即可与我联系了。🍅 点击查看作者主页,了解更多项目! 🍅感兴趣的可以先收藏起来,点赞、关注不迷路,大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助同学们顺利毕业 。🍅 1、毕业设计:2026年计算机专业毕业设计选题汇总(建议收藏)✅ 2、最全计算机专业毕业设计选题大全(建议收藏)✅ 1、项目介绍 技术栈 本系统基于Python3.x版本开发,采用Django框架搭建前后端架构,使用MySQL或sqlite3数据库进行数据存储管理。开发环境为PyCharm,运行于Windows平台,数据集采用Last.fm Dataset-360K Users公开数据集。 功能模块 · 系统首页 · 播放、喜欢、不喜欢、收藏 · 音乐播放

By Ne0inhk
零基础学AI大模型之Milvus实战:Attu可视化安装+Python整合全案例

零基础学AI大模型之Milvus实战:Attu可视化安装+Python整合全案例

大家好,我是工藤学编程 🦉一个正在努力学习的小博主,期待你的关注实战代码系列最新文章😉C++实现图书管理系统(Qt C++ GUI界面版)SpringBoot实战系列🐷【SpringBoot实战系列】SpringBoot3.X 整合 MinIO 存储原生方案分库分表分库分表之实战-sharding-JDBC分库分表执行流程原理剖析消息队列深入浅出 RabbitMQ-RabbitMQ消息确认机制(ACK)AI大模型零基础学AI大模型之Milvus部署架构选型+Linux实战:Docker一键部署+WebUI使用 前情摘要 1、零基础学AI大模型之读懂AI大模型 2、零基础学AI大模型之从0到1调用大模型API 3、零基础学AI大模型之SpringAI 4、零基础学AI大模型之AI大模型常见概念 5、零基础学AI大模型之大模型私有化部署全指南 6、零基础学AI大模型之AI大模型可视化界面 7、零基础学AI大模型之LangChain 8、零基础学AI大模型之LangChain六大核心模块与大模型IO交互链路 9、零基础学AI大模型之Prompt提示词工程 10、零基础

By Ne0inhk
为何将边缘采集引擎从 Python 重写为 Go?不止是性能,附核心代码与编译方案

为何将边缘采集引擎从 Python 重写为 Go?不止是性能,附核心代码与编译方案

一、 场景痛点:Python 在边缘端的“三宗罪” 在两年前的一个智慧水务项目中,我们使用 Python (Flask + Pymodbus + Paho-MQTT) 开发了网关程序。起初一切安好,但随着点位增加到 5000 个,问题开始爆发: 1. 内存吞噬兽:Python 的解释器机制导致内存占用极高。一个简单的采集脚本,运行一周后内存从 50MB 飙升到 200MB(疑似 C 扩展库内存泄漏)。对于只有 512MB 内存的 ARM 网关,这是致命的。 2. “依赖地狱” (Dependency Hell):现场网关是 ARMv7 (32位) 架构,且无法连接外网。每次为了安装 pandas 或 numpy,都需要在开发机上交叉编译一堆 C

By Ne0inhk
Python 开发股票检测常用的免费金融数据库

Python 开发股票检测常用的免费金融数据库

Akshare是一个基于Python的金融数据获取和分析工具,它提供了广泛的金融市场数据,包括股票、期货、外汇、基金等各种类型的数据。Akshare的简单易用性和丰富的功能使得它成为金融数据分析和量化交易的理想选择。 使用方式 下载地址:https://github.com/akfamily/akshare 使用说明:https://akshare.akfamily.xyz/ 样例代码 import akshare as ak # 获取上证指数历史行情数据 df_sh_index = ak.stock_zh_index_daily(symbol="sh000001") print(df_sh_index) Tushare Tushare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、

By Ne0inhk