打卡第二十七天 455分发饼干 376摆动序列

第一题:

原题链接:455. 分发饼干 - 力扣(LeetCode)

思路:

将大的饼干来满足胃口大的孩子。

先将小孩子的胃口和饼干的尺寸进行排序。然后从后往前遍历胃口,饼干的尺寸也从后往前。如果饼干尺寸大于等于小孩胃口,res++,然后比较下一块饼干。

代码如下:

class Solution {
public:int findContentChildren(vector<int>& g, vector<int>& s) {sort(g.begin(), g.end());sort(s.begin(), s.end());int res = 0;int index = s.size() - 1;for(int i = g.size() - 1; i >= 0; i--){if(index >= 0 && s[index] >= g[i]){res++;index--;}}return res;}
};

第二题:

原题链接:376. 摆动序列 - 力扣(LeetCode)

思路:

首元素和尾元素都算摆动

考虑三种情况:

第一种是上下坡有平坡

第二种是首尾元素,直降将尾元素记录为1;

第三种是单调坡有平坡。

整体的思路是prediff >= 0 && curdiff < 0 || prediff <= 0 && curdiff > 0 就证明是摆动。

第三种情况就是当有坡度的时候才更行prediff的值。

代码如下:

class Solution {
public:int wiggleMaxLength(vector<int>& nums) {if(nums.size() == 1) return 1;int res = 1;int prediff = 0;int curdiff = 0;for(int i = 0; i < nums.size() - 1; i++){curdiff = nums[i + 1] - nums[i];if(prediff >= 0 && curdiff < 0 ||prediff <= 0 && curdiff > 0){res++;prediff = curdiff;}}return res;}
};

第三题:

原题链接:53. 最大子数组和 - 力扣(LeetCode)

思路:

当前连续子数组的和如果小于0就直接从下一个元素进行计算。切记不能遇到负数就跳过。用res记录每次的遍历的最大和。

代码如下:

class Solution {
public:int maxSubArray(vector<int>& nums) {int res = INT_MIN;int count = 0;for(int i = 0; i < nums.size(); i++){count += nums[i];if(count > res) res = count;if(count < 0) count = 0;}return res;}
};

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

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

相关文章

Android系统adb shell dumpsys activity processes

在Android系统中&#xff0c;adb shell dumpsys activity processes 命令是一个非常强大的工具&#xff0c;用于获取当前系统中所有运行进程的详细信息&#xff0c;包括它们的状态、内存使用情况、任务栈等。这对于开发者来说非常有用&#xff0c;尤其是在调试应用、分析系统性…

安装Gitlab+Jenkins

GItlab概述 GitLab概述&#xff1a; 是一个利用 Ruby on Rails 开发的开源应用程序&#xff0c;实现一个自托管的Git项目仓库&#xff0c;可通过Web界面进行访问公开的或者私人项目。 Ruby on Rails 是一个可以使你开发、部署、维护 web 应用程序变得简单的框架。 GitLab拥有与…

【hot100】跟着小王一起刷leetcode -- 739. 每日温度

【hot100】跟着小王一起刷leetcode -- 739. 每日温度 739. 每日温度题目解读思路 代码总结 739. 每日温度 题目解读 739. 每日温度 老规矩&#xff0c;咱先看下题目。总结下来就是&#xff0c;你要返回一个answer数组&#xff0c;answer[i]中存储的应该是temperatures数组中…

Python在智慧农业中的实践:智能灌溉系统的自动化控制

Python在智慧农业中的实践&#xff1a;智能灌溉系统的自动化控制 Python凭借其强大的库支持和易读性&#xff0c;正逐步渗透到各行各业&#xff0c;成为推动技术革新的重要力量。今天&#xff0c;我们将聚焦智慧农业&#xff0c;通过一个生动的案例&#xff0c;探索Python如何…

解决ps暂存盘已满的问题

点击编辑->首选项->暂存盘 ps默认暂存盘使用的是c盘&#xff0c;我们改成d盘即可 然后重启ps

​​​​​​​​​​​​​​Spark Standalone集群环境

目录 Spark Standalone集群环境 修改配置文件 【workers】 【spark-env.sh】 【配置spark应用日志】 【log4j.properties】 分发到其他机器 启动spark Standalone 启动方式1&#xff1a;集群启动和停止 启动方式2&#xff1a;单独启动和停止 连接集群 【spark-shel…

详细介绍MySQL的索引(下)

索引的使用 同一条数据在未创建索引的情况下耗时&#xff1a; nick字段是未创建索引的 select * from t_user WHERE nick 邹丽;SHOW PROFILES; 耗时为&#xff1a; user_account字段创建了唯一索引 select * from t_user WHERE user_account 13781945844;SHOW PROFILES;…

PHP验证日本固定电话号码

日本电话号码格式众多&#xff0c;验证起来比较头大&#xff0c;现在咱们来一个简单的总结哈 为了简单起见&#xff0c;使用PCRE 函数preg_match通过匹配正则表达式来实现验证。 function checkGdTelLandline(string $str): int|false {return preg_match("/\A0(\d{1}[-…

git commit 怎么跳过 husky, commitlint 的检查

我们引入 husky, commitlint 是为了保障代码入库的质量&#xff0c;但是有些时候&#xff0c;我们需要应急处理&#xff0c;比如你在升级框架时&#xff0c;通常不是一两天能解决的&#xff0c;可能希望临时把代码提交到一个分支&#xff0c;而这个时候&#xff0c;你改造的代码…

0122__linux之eventfd理解

linux之eventfd理解-CSDN博客 Linux fd 系列 — eventfd 是什么&#xff1f;-CSDN博客

安装 VisualSVN Server提示HTTP服务无法启动的问题解决

安装 VisualSVN Server 版本&#xff1a;VisualSVN-Server-5.4.0-x64 安装包在安装到一半的时候&#xff0c;弹窗提示&#xff1a;HTTP服务无法启动&#xff0c;网上找了一大堆&#xff0c;说是service里面更改用户为本地用户什么的都没用用&#xff0c;点右键也无法启动。 …

配置Uptime Kuma固定前缀

在做ICT集成项目时&#xff0c;遇到需要对现网接口进行拨测的需求。搜索后尝试使用开源的Uptime Kuma组件完成现网接口拨测。 但该项目有个问题就是默认不支持配置固定前缀&#xff0c;这对现网进行请求转发会造成较大的影响。通过查看该项目的github后找到了问题的解决方案。S…

systemd指令之journalctl指令

systemd的历史由来及概述 在Linux系统的发展历程中&#xff0c;init进程一直是系统启动的核心。然而&#xff0c;这种传统的启动方式存在两个主要缺点&#xff1a; 启动时间长&#xff1a;init进程采用串行启动机制&#xff0c;只有在前一个进程启动完成后&#xff0c;才能启…

web自动化(三)鼠标操作键盘

selenuim 键盘操作 import timefrom selenium.webdriver.common.keys import Keys from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.wait import WebDriverWait from selen…

SQL语言基础特点、数据库系统

一、SQL的概述 &#xff08;1&#xff09; SQL全称&#xff1a; Structured Query Language&#xff0c;是结构化查询语言&#xff0c;用于访问和处理数据库的标准的计算机语言。 &#xff08;2&#xff09;SQL语言1974年由Boyce和Chamberlin提出&#xff0c;并首先在IBM公…

安卓h5打包系统设计

设计一个安卓H5打包系统,主要是为了将H5应用高效、便捷地转换为原生安卓应用(APK),以适应不同场景下的需求。下面是一个基本的设计框架: 1. 系统目标与需求分析 目标:实现一个用户友好的界面,使无编程基础的用户也能轻松将H5项目打包成安卓APP。需求: 支持H5项目上传与…

Leetcode秋招冲刺(专题10--12)

专题10&#xff1a;动态规划 题目509&#xff1a;斐波那契数&#xff08;NO&#xff09; 解题思路&#xff1a;动态五部曲 动态五部曲&#xff1a;这里我们用一个一维数组来保存递归的结果 确定dp数组以及下标的含义 dp[i]的定义为&#xff1a;第i个数的斐波那契数值是dp[i]…

手写数组去重

方法1-判断相邻元素 function _deleteRepeat(arr){if(!Array.isArray(arr)){throw new Error(参数必须是数组)}let res[];// 使用slice创建arr的副本&#xff0c;并排序let sortArrarr.slice().sort((a,b)>a-b);for(let i0;i<sortArr.length;i){if(isortArr.length-1||s…

韩语日常口语留学韩语旅游韩语口语柯桥语言培训

韩语每日一词打卡&#xff1a;행정적[행정적]【名词】行政 原文:나라는 항상 행정적 명령을 통해 경제운행을 조절합니다. 意思&#xff1a;国家经常通过行政命令去调节经济的运行。 【原文分解】 1、항상[항상]总是 &#xff0c;经常 2、나라[나라]国家 3、명령[명:녕]命令 …

Node.js_流Stream

Node.js 中的流&#xff08;Streams&#xff09;是一种处理读取和写入数据的抽象接口&#xff0c;它允许你以非阻塞的方式处理数据&#xff0c;这对于处理大文件或网络请求等 I/O 密集型任务非常有用。流主要分为四种类型&#xff1a;可读流&#xff08;Readable&#xff09;、…