【每日刷题】Day137

news2024/11/29 3:49:05

【每日刷题】Day137

🥕个人主页:开敲🍉

🔥所属专栏:每日刷题🍍

🌼文章目录🌼

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

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

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

//思路:模拟+哈希。

//照葫芦画瓢,题目要求什么我们就做什么。

//题目的意思非常明确,将字符串 s 中的所有 '?' 变为小写字母,但是不能和它的前一个以及后一个的字母相同。

//这里我们遍历字符串s,每次遍历用一个新的哈希表来记录。如果当前字符为 '?',则记录一下它的前一个以及后一个字符,在哈希表中记为1。随后遍历哈希表中小写字母的下标,遍历到为 0 说明当前字母没被记录,用其替换 '?'。

class Solution {

public:

    string modifyString(string s)

    {

        for(int i = 0;i<s.size();i++)

        {

            int hash[128] = {0};//哈希数组记录

            if(s[i]=='?')

            {

                if(i-1>=0) hash[s[i-1]] = 1;

                if(i+1<s.size()) hash[s[i+1]] = 1;//记录 '?' 字符的前一个以及后一个字符

                for(int j = 97;j<=122;j++)//随后遍历小写字母的下标,用没有记录的字符替换 '?'

                    if(!hash[j]) s[i] = j;

            }

        }

        return s;

    }

};

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

//思路:模拟。

//遍历数组时我们只需要判断,当前秒我们给艾希挂上毒时,在毒的持续时间内我们是否重复挂上毒。也就是说,在前一个毒结束之前,我们是否又挂上了新的毒。

//如果 当前秒数 + 毒的持续时间 - 1 < 下一个秒数,说明在下一次挂毒之前,当前挂的毒已经失效,此时我们直接加上 duration

//如果 当前秒数 + 毒的持续时间 - 1 >= 下一个秒数,说明在下一次挂毒之前,当前挂的毒还没有失效,此时如果我们重新挂毒,则会浪费掉剩余的中毒时间。

class Solution {

public:

    int findPoisonedDuration(vector<int>& timeSeries, int duration)

    {

        int ans = 0,time = duration;

        for(int i = 0;i<timeSeries.size()-1;i++)//注意这里我们不遍历到最后一个秒数,因为最后一秒的中毒时间一定是完全利用上的,因此为了防止数组越界访问,我们这里访问到到数第二个,只需要在最后的结果 + duration 就是答案。

        {

            if(timeSeries[i]+duration-1<timeSeries[i+1]) ans+=duration;

            else ans+=(duration-(duration-timeSeries[i+1]+timeSeries[i]));//具体浪费的中毒时间就是 duration - (duration - 两个秒数的差值)

        }

        return ans+duration;

    }

};

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

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

相关文章

【数据结构与算法】线性表顺序存储结构

文章目录 一.顺序表的存储结构定义1.1定义1.2 图示1.3结构代码*C语言的内存动态分配 二.顺序表基本运算*参数传递2.1建立2.2初始化(InitList(&L))2.3销毁(DestroyList(&L))2.4判断线性表是否为空表(ListEmpty(L))2.5求线性表的长度(ListLength(L))2.6输出线性表(DispLi…

基于GoogleNet深度学习网络的手语识别算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) 手语How are you&#xff0c;测试识别结果如下&#xff1a; 手语I am fine&#xff0c;测试识别结果如下&#xff1a; 手…

java入门和Java语法

Java直接运行源代码文件&#xff0c;不会产生HelloWorld.class第二种方法&#xff1a;把模块放在D盘下&#xff0c;然后导入 第三种方法&#xff1a;新建一个模块&#xff0c;然后把内容复制过去 byte l 12; short m l; System.out.println(m); char n a; int reason mn; Sy…

消息摘要算法

算法特点 a) 消息摘要算法/单向散列函数/哈希函数 b) 不同长度的输入&#xff0c;产生固定长度的输出 c) 散列后的密文不可逆 d) 散列后的结果唯一 e) 哈希碰撞 f) 一般用于校验数据完整性、签名sign 由于密文不可逆&#xff0c;所以服务端也无法解密 想要验证&#xf…

解锁机器人视觉与人工智能的潜力,从“盲人机器”改造成有视觉能力的机器人(下)

机器视觉产业链全景回顾 视觉引导机器人生态系统或产业链分为三个层次。 上游&#xff08;供应商&#xff09; 该机器人视觉系统的上游包括使其得以运行的硬件和软件提供商。硬件提供商提供工业相机、图像采集卡、图像处理器、光源设备&#xff08;LED&#xff09;、镜头、光…

如何让信息学奥赛学习“边玩边学”?——趣味编程让枯燥学习变得有趣

信息学奥赛&#xff08;NOI&#xff09;作为一项高水平的编程竞赛&#xff0c;内容涉及到大量的算法、数据结构和复杂的逻辑思维&#xff0c;对学生的要求非常高。然而&#xff0c;面对枯燥的知识点和高难度的题目&#xff0c;很多学生在备赛过程中容易感到乏味甚至放弃。那么&…

Overfrp内网穿透:使用域名将内网http/https服务暴露到公网

项目地址&#xff1a;https://github.com/sometiny/overfrp 使用overfrp部署穿透服务器&#xff0c;绑定域名后&#xff0c;可使用域名访问内网的http/https服务。 用例中穿透服务器和内网机器之间的访问全链路加密&#xff0c;具有ssh2相当的安全级别。&#xff01;&#xf…

国外电商系统开发-运维系统秘钥管理

文件上传功能&#xff0c;都是通过拖放的方式上传的 当然了&#xff0c;上面我只是演示行的放几个文件而已&#xff0c;不要在意文件名。此时&#xff0c;如果您有服务器是通过SSH-Key登录的&#xff0c;那么在服务器配置中&#xff0c;您可以做如下选择&#xff1a;

【论文阅读】Learning a Few-shot Embedding Model with Contrastive Learning

使用对比学习来学习小样本嵌入模型 引用&#xff1a;Liu, Chen, et al. “Learning a few-shot embedding model with contrastive learning.” Proceedings of the AAAI conference on artificial intelligence. Vol. 35. No. 10. 2021. 论文地址&#xff1a;下载地址 论文代码…

jenkins 插件SSH Pipeline Steps

一、安装 SSH Pipeline Steps | Jenkins plugin 二、添加全局linux服务器用户名密码&#xff1a;linux-142 三、新建流水线SshServer 添加Pipeline Script node {def remote [:]remote.name tstremote.host 192.168.31.142remote.allowAnyHosts truewithCredentials([usern…

leetcode167. 两数之和 II - 输入有序数组

给你一个下标从 1 开始的整数数组 numbers &#xff0c;该数组已按 非递减顺序排列 &#xff0c;请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设这两个数分别是 numbers[index1] 和 numbers[index2] &#xff0c;则 1 < index1 < index2 < numbers…

操作系统中的并发控制——使用条件变量同步

本期主题&#xff1a; 操作系统中的并发控制&#xff0c;条件变量 往期链接&#xff1a; linux设备驱动中的并发操作系统中的多线程问题——原子操作、自旋锁的底层实现操作系统并发控制——使用互斥锁实现同步 操作系统并发控制之条件变量同步 1. 问题描述2. 条件变量的API讲…

数据治理、数据清洗定义、区别以及数据清洗常用方法

一、数据治理定义 数据治理是一种组织数据管理的方法&#xff0c;涉及数据的收集、存储、处理、分析和共享等方面&#xff0c;旨在最大程度地利用数据资产并降低数据相关的风险。‌ 数据治理确保数据的质量、安全性、合规性和可用性&#xff0c;以支持组织的决策和运营活动。‌…

【Canvas与标牌】2024.10.8胜利大逃亡盾形标牌

【成图】 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>537.日期金盾Draft2上色</title><style type"text/css…

用Raspberry Pi Imager重装树莓派系统

今天删东西的时候&#xff0c;无意中把系统文件给remove了&#xff0c;结果树莓派无法正常启动&#xff0c;只能重新安装。 用DiskGenius工具将SD卡彻底清空&#xff0c;并将boot分区和文件分区合并为一&#xff0c;之后再对这个新分区进行了格式化。接下来就是烧录镜像了。以…

Java知识巩固(二)

OKracle JDK vs OpenJD 可能在看这个问题之前很多人和我一样并没有接触和使用过 OpenJDK 。那么 Oracle JDK 和 OpenJDK 之间是否存在重大差异&#xff1f;下面我通过收集到的一些资料&#xff0c;为你解答这个被很多人忽视的问题。 首先&#xff0c;2006 年 SUN 公司将 Java…

HTB:Bike[WriteUP]

目录 连接至HTB服务器并启动靶机 1.What TCP ports does nmap identify as open? Answer with a list of ports seperated by commas with no spaces, from low to high. 2.What software is running the service listening on the http/web port identified in the first …

MVC案例整合Spring和Hibernate

说到整合Spring和Hibernate首先要搞清楚&#xff0c;整合什么&#xff1f; 1、使用Spring的IOC容器来生产Hibernate的SessionFactory对象实例 2、让Hibernate使用Spring的声明式事务 整合步骤 1、先加入Hibernate 2、在加入Spring&#xff0c;整合 新建项目&#xff0c;建…

38个巨魔神级APP,建议果粉收藏

本文介绍了2024年最常用的38个精选巨魔工具&#xff0c;整理不易&#xff0c;建议收藏。 工欲善其事&#xff0c;必先利其器。从我刚接触巨魔开始&#xff0c;我就发现很多人即使有了巨魔&#xff0c;也是两眼一摸黑。 除了多开APP、通话录音&#xff0c;不知道巨魔还有什么用…

图论day57|建造最大岛屿(卡码网)【截至目前,图论的最高难度】

图论day57|建造最大岛屿&#xff08;卡码网&#xff09;【截至目前所做的题中&#xff0c;图论的最高难度】 思维导图分析 104.建造最大岛屿&#xff08;卡码网&#xff09;【截至目前所做的题中&#xff0c;图论的最高难度】 思维导图分析 104.建造最大岛屿&#xff08;卡码网…