当前位置: 首页 > news >正文

【代码随想录day 29】 力扣 135.分发糖果

视频讲解:https://www.bilibili.com/video/BV1ev4y1r7wN/?vd_source=a935eaede74a204ec74fd041b917810c
文档讲解:https://programmercarl.com/0135.%E5%88%86%E5%8F%91%E7%B3%96%E6%9E%9C.html#%E6%80%9D%E8%B7%AF
力扣题目:https://leetcode.cn/problems/candy/

这道题不是那么好想,因为评分要和两边的比,这就要规划怎么比了,如果每次都跟两边比,到最后会发现哪边都满足不了条件,这里采用的方法是从前往后遍历一次,从后往前遍历一次,判断前后大小情况

  1. 从前往后遍历,如果右大于左,糖果++
  2. 从后往前遍历,如果左大于右,糖果++
  3. 两次遍历取最大值,这样既可以满足从左往右的合法性,又能满足从右往左的合法性
class Solution {
public:int candy(vector<int>& ratings) {//初始化糖果数组vector<int> candy(ratings.size(), 1);//从左往右遍历for(int i = 1; i < ratings.size(); ++i){//如果右比左大,candy+1if(ratings[i - 1] < ratings[i]){candy[i] = candy[i - 1] + 1;}}//从右往左遍历for(int i = ratings.size() - 2; i >= 0; --i){//如果左比右大,candy+1if(ratings[i] > ratings[i + 1]){candy[i] = max(candy[i + 1] + 1, candy[i]);}}//计算结果int result = 0;for(int i = 0; i < candy.size(); ++i){result += candy[i];}return result;}
};
http://www.dtcms.com/a/423533.html

相关文章:

  • 上海企业建站咨询c 微信小程序开发教程
  • 新奇特:数字永生,当神经网络成为你的数字化身
  • 开题报告之基于SpringAI的AI笔记智能体的设计与实现
  • 【SpringBoot】@Scheduled是静态配置,是我想改时间,但又不想引入其他组件,还有什么方案么?
  • ip做网站地址电商平面设计师
  • C语言内存布局:虚拟地址空间详解
  • 南昌比较好的网站设计白银市建设网站
  • Redis:高性能内存数据库的六大核心优势
  • Qt 程序包括Qt Creator 无法使用fcitx 输入法的解决办法
  • 【题解】洛谷 P4051 [JSOI2007] 字符加密 [后缀数组]
  • 免费 网站建设火车头 wordpress接口
  • 【MYSQL 】SQL 行列转换实战:如何用 CASE WHEN 与 SUM/MAX 重塑部门表
  • 网站申请支付宝支付网站关键词选取的方法
  • 最新版谷歌浏览器Axure插件(免翻墙)
  • 网站加载特效代码开源镜像网站开发
  • 虚拟串口工具vspd
  • 从入门到精通【Redis】理解Redis事务
  • Android16 wifi启动后自动连接的第一个wifi分析和修改
  • 【C++STL :vector类 (一) 】详解vector类的使用层vector实践:算法题练习
  • 做淘宝用那些网站发货如何进行电子商务网站推广
  • 语言是火,视觉是光:论两种智能信号的宿命与人机交互的未来
  • Java应用实例:三角形判断(向量叉积、海伦公式)、分数序列求和
  • Go Modules 包管理 (Go 模块)
  • Go基础(⑦实例和依赖注入)
  • 网站建设绩效考核方案ppt网页开发背景与意义
  • 【数据结构】基础知识
  • Fluttercon EU 2025 :Let‘s go far with Flutter
  • go-commons/stringutils 与标准库 strings 对比
  • 长春网站推广方式seo综合查询国产
  • 探索3D空间的视觉基础模型系列