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

leetcode135:分发糖果

分发糖果

n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。

你需要按照以下要求,给这些孩子分发糖果:

  • 每个孩子至少分配到 1 个糖果。
  • 相邻两个孩子评分更高的孩子会获得更多的糖果。

请你给每个孩子分发糖果,计算并返回需要准备的 最少糖果数目

public int candy(int[] ratings) {
        int[] res = new int[ratings.length];
        res[0] = 1;
        for (int i = 0; i < ratings.length-1; i++) {
            if(ratings[i] < ratings[i+1]){
                res[i+1] = res[i] + 1;
            }else{
                res[i+1] = 1;
            }
        }
        for (int i = ratings.length-1; i > 0; i--) {
            if(ratings[i] < ratings[i-1]){
                res[i-1] = Math.max(res[i-1],res[i] + 1);
            }
        }
        int sum = 0;
        for (int i = 0; i < res.length; i++) {
            sum += res[i];
        }
        return sum;
    }

这题目的思路在于如何做贪心

如果左右一起做很难完成

需要先做一个方向,再做另一个方向


http://www.kler.cn/a/280783.html

相关文章:

  • 计算机毕业设计推荐-基于python的个性化旅游路线推荐平台
  • Spark MLlib 特征工程系列—特征转换PCA(Principal Component Analysis)
  • 《人工智能与自然语言处理:开启智能交流新时代》
  • ECMAScript性能优化技巧于陷阱
  • 【面试】jvm栈默认大小
  • 如何将十六进制的乱码转换成汉字
  • `console.log` 打印一个对象并且得到 `“object Object“`
  • Spark MLlib 特征工程系列—特征转换SQLTransformer
  • websocket的介绍及springBoot集成示例
  • 【Linux】进程池实例
  • [Jsprit]Jsprit学习笔记-初见Jsprit-doc
  • 约 数个数
  • Zabbix和Prometheus
  • 【数据结构4】树的实例-模拟文件系统、二叉树的遍历(先序遍历、中序遍历、后序遍历、层次遍历)
  • aclStream流处理多路并发Pipeline框架中 视频解码 代码调用流程整理、类的层次关系整理、回调函数赋值和调用流程整理
  • 2024.8.24 Python,链表异常断裂问题,双链表的建立问题,全排列中的引用机制与copy的使用,最大子数组和
  • 定制开发AI智能名片商城小程序:重塑品牌曝光的创新推手
  • Android 退出app方式(回忆录)
  • 【C++ STL哈希容器】unordered_set 无序集合
  • react 中的useState useEffect