Leetcode---349周赛

news2024/11/25 4:49:02

题目列表

2733. 既不是最小值也不是最大值

2734. 执行子串操作后的字典序最小字符串

2735. 收集巧克力

2736. 最大和查询(这题难度较大,等以后有时间再和大家分享)

一、2733、既不是最小值也不是最大值

关键是看到题目中说数组中的元素不同,那很显然,1.num数量<=2时,不存在,返回-1,2.在前三个数字中找到中间的那个数返回 

int findNonMinOrMax(int* nums, int numsSize){
    if(numsSize<=2)
        return -1;
    int sum=nums[0]+nums[1]+nums[2];
    int max=fmax(nums[0],fmax(nums[1],nums[2]));
    int min=fmin(nums[0],fmin(nums[1],nums[2]));
    return sum-max-min; 
}

 二、2734. 执行子串操作后的字典序最小字符串

题目要求找到一个子字符串,将该子字符串中的所有字符-1,得到最小的字典序,很显然,前面的字符权重大(因为在比较字符串大小时,优先比较前面字符的大小,不懂的,参照strcmp函数),优先选前面的子字符串,但是a不能进行替换,因为a->z,字典序很显然变大,所以我们要将前面的不含a的第一个尽可能长的子串中的字符-1

需要注意的是:如果字符串全是a组成,根据题要求,我们必须进行一次操作,所以我们选择将最后一个a变成z,理由同上,权重最小,得到的字典序就会相较于其他变形大。s

char * smallestString(char * s){
    int i=0,n=strlen(s);
    while(i<n&&s[i]=='a'){
        i++;
    }
    //考虑到全是a的情况
    if(i==n){
        s[n-1]='z';
        return s;
    }
    while(i<n&&s[i]!='a'){
        s[i]--;
        i++;
    }
    return s;
}

 三、2735. 收集巧克力

 这题的思路其实只要看到这个数据的区间范围都应该想到可以用暴力枚举,当然这个暴力枚举不是就纯暴力,还是要讲究方法的,但大体思路就应该是求出每一次旋转次数得到的最小的成本,然后比较得到最小值返回

我们可以根据它给的例子大致看一下

 

long long minCost(int* nums, int numsSize, int x){
    int n=numsSize;
    long long sum[n];
    //注意数据范围,sum和i都得是long long类型
    for(long long i=0;i<n;i++){
        sum[i]=i*x;
    }
    for(int i=0;i<n;i++){
        int nm=nums[i];
        for(int j=i;j<i+n;j++){
            nm=fmin(nm,nums[j%n]);
            sum[j-i]+=nm;
        }
    }
    long long ans=LLONG_MAX;
    for(int i=0;i<n;i++){
        if(ans>sum[i]){
            ans=sum[i];
        }
    }
    return ans;
}

 

 

 

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

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

相关文章

一文快速了解软件技术基础

前言 数据结构和算法是计算机科学的基石&#xff0c;它们为我们提供了处理和组织数据的方法和工具。通过学习数据结构&#xff0c;您将能够理解如何存储和操作不同类型的数据&#xff0c;如何优化内存使用和访问效率&#xff0c;以及如何设计高效的算法来解决各种计算问题。掌…

iOS -- isa指针

isa指针&#xff1a;isa指针是一个指向对象所属类或元类的指针。它决定了对象可以调用的方法和属性。isa指针在对象的结构中存在&#xff0c;并且在运行时会被自动设置。isa 指针&#xff0c;表示这个对象是一个什么类。而 Class 类型&#xff0c; 也就是 struct objc_class * …

XML 的命名空间及其在OPCUA中的应用

为了防止不同XML 使用的名称冲突&#xff0c;XML 规范中规定的命名空间&#xff0c;平时编写单一命名空间的XML 文档&#xff0c;没有过多地注意XML 命名空间的细节。当开发OPCUA 信息模型时&#xff0c;被命名空间搞得云里雾里。为此&#xff0c;做了一个笔记。 URI(Uniform R…

Vue3_ElementPlus_简单增删改查(2023)

Vue3&#xff0c;Element Plus简单增删改查 代码&#xff1a;https://github.com/xiaoming12318/Vue3_ElementPlus_CRUD.git 环境&#xff1a; Visual Studio Code Node.js 16.0或更高版本&#xff0c;https://nodejs.org/en axios 快速上手&#xff1a; 如果已经有16.0及…

Vue单文件组件

单文件组件 单文件组件是在开发中用的比较多的&#xff0c;它的后缀都是.vue结尾的 既然是.vue结尾&#xff0c;那么直接给浏览器是不能运行的&#xff0c;.vue文件是vue团队打造的特殊文件&#xff0c;想让.vue文件让浏览器识别并且运行&#xff0c;需要对它进行处理加工成纯…

5款大厂设计师都在用的网页设计工具

本文收集了5款大厂设计师使用的几种流行易用的网页设计工具&#xff0c;其中一个可以AI自动生成设计稿&#xff0c;非常的方便&#xff0c;相信一定有一个适合你的网页设计工具。 1.即时设计 即时设计是一款免费的在线 UI 设计工具&#xff0c;无系统限制&#xff0c;浏览器打…

三个原则判定电源环路稳定性

1 环路稳定性评价指标 衡量开关电源稳定性的指标是相位裕度和增益裕度。同时穿越频率&#xff0c;也应作为一个参考指标。 (1) 相位裕度是指&#xff1a;增益降到0dB时所对应的相位。 (2) 增益裕度是指&#xff1a;相位为0deg时所对应的增益大小(实际是衰减)。 (3) 穿越频率…

DVWA下载、安装及使用教程,网络安全小白必看!

DVWA是一款基于PHP和mysql开发的web靶场练习平台&#xff0c;集成了常见的Web漏洞。旨在为安全人员测试自己的专业技能和工具提供合法的环境&#xff0c;帮助web开发者更好的理解web应用安全防范的过程&#xff1b; 一、DVMA介绍 DVWA官网 (opens new window)DVWA Github (ope…

springboot配置文件中的巨坑!!

问题 application.yml test:password1: 030030password2: 030030使用此配置的bean Component public class Test {Value("${test.password1}")private String password1;Value("${test.password2}")private String password2;PostConstructpublic void …

企业微信建设代开发应用的基本流程及实现

一、企业微信代开发应用的基本流程 企业微信中除了系统提供的应用以及上架应用商店的第三方应用外&#xff0c;也可以使用自己开发的应用&#xff0c;不过多数企业都不具备开发能力&#xff0c;只能采用代开发的形式进行定制。就给大家分享一下企业微信代开发应用的基本流程&a…

java八股面试文(带答案,万字总结,精心打磨,建议收藏)堪称2023最强

前言 2023秋招即将来临&#xff0c;很多同学会问Java面试八股文有必要背吗&#xff1f; 我的回答是&#xff1a;很有必要。你可以讨厌这种模式&#xff0c;但你一定要去背&#xff0c;因为不背你就进不了大厂。 国内的互联网面试&#xff0c;恐怕是现存的、最接近科举考试的…

【Java项目】不使用ES实现关键词搜索问题

文章目录 需求解决思路基本设计查询流程插入流程修改流程删除流程 优化思路总结 需求 ok&#xff0c;这个需求是我提的&#xff0c;然后我问了我的一位杭州的朋友&#xff0c;然后我们最后一起敲定这个方法。 我的项目有一个根据关键字进行商品名称的搜索功能&#xff0c;用户…

安卓期末考试知识总结

文章目录 第一章&#xff1a;Android基础入门习题总结重点知识 第二章&#xff1a;Android常见桌面布局&第三章&#xff1a;Android常见界面控件知识总结习题总结 第一章&#xff1a;Android基础入门 习题总结 Android系统采用分层架构&#xff0c;由高到低分为4层&#…

MySQL数据库 --- 运维篇

一、日志 1.1、错误日志 错误日志是 MySQL 中最重要的日志之一&#xff0c;它记录了当 mysqld 启动和停止时&#xff0c;以及服务器在运行过程中发生任何严重错误时的相关信息。当数据库出现任何故障导致无法正常使用时&#xff0c;建议首先查看此日志。 该日志是默认开启的…

实训笔记6.12

实训笔记6.12 6.12一、座右铭二、知识回顾2.1 面向对象的两大核心概念&#xff1a;类和对象2.2 面向对象的三大特征封装性继承性多态性-必须在继承之上抽象性 2.3 面向对象的常用关键字2.4 Java设计模式中适配器模式2.4.1 接口适配器2.4.2 类适配器2.4.3 对象适配器 三、Java常…

Linux基础知识3

Linux基础知识 适合有Linux基础的人群进行复习。 禁止转载&#xff01; 用户与用户组管理 Linux系统下的3类用户和功能&#xff1b; 答&#xff1a; root用户&#xff08;或称根用户、超级用户&#xff09;&#xff1a;Linux的内置用户&#xff0c;权限最高&#xff0c;具有…

wps安装提示nsis error

1.安装时弹出「NSIS error」错误框&#xff0c;无法安装。 此问题为一般为安装包损坏导致&#xff0c;可重新下载安装包尝试安装。 我遇到的提示也是这个。文件损坏。但是换了绿色U盘&#xff08;格式是FAT32&#xff09;复制过去就能安装。 之前用白色U盘&#xff08;格式是N…

一学就会-----链表的回文结构

文章目录 题目描述思路代码示例 题目描述 对于一个链表&#xff0c;请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法&#xff0c;判断其是否为回文结构。 给定一个链表的头指针A&#xff0c;请返回一个bool值&#xff0c;代表其是否为回文结构。保证链表长度小于等于90…

1.1 搭建Scala开发环境

一、Windows上安装Scala &#xff08;一&#xff09;到Scala官网下载Scala Scala2.13.10下载网址&#xff1a;https://www.scala-lang.org/download/2.13.10.html 单击【scala-2.13.10.msi】超链接&#xff0c;将scala安装程序下载到本地 &#xff08;二&#xff09;安装…

Atcoder Beginner Contest 305

A - Water Station AC代码&#xff1a; #include<iostream> #include<algorithm> #include<cstring> using namespace std; int main() {int n;cin>>n;int a,b;for(int in;;i){if(i%50){ai;break;}}for(int in;;i--){if(i%50){bi;break;}}if(a-n<…