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

西安自助建站做网站钟祥网站制作

西安自助建站做网站,钟祥网站制作,行政机关网站建设,英雄联盟网站设计#x1f3c6;作者简介#xff0c;普修罗双战士#xff0c;一直追求不断学习和成长#xff0c;在技术的道路上持续探索和实践。 #x1f3c6;多年互联网行业从业经验#xff0c;历任核心研发工程师#xff0c;项目技术负责人。 #x1f389;欢迎 #x1f44d;点赞✍评论… 作者简介普修罗双战士一直追求不断学习和成长在技术的道路上持续探索和实践。 多年互联网行业从业经验历任核心研发工程师项目技术负责人。 欢迎 点赞✍评论⭐收藏 算法专栏学习 题目访问地址专栏分发糖果https://blog.csdn.net/m0_50308467/article/details/135343315算法专栏 经典算法题 之 分发糖果 题目如下 n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。 你需要按照以下要求给这些孩子分发糖果 每个孩子至少分配到 1个糖果。相邻两个孩子评分更高的孩子会获得更多的糖果。 请你给每个孩子分发糖果计算并返回需要准备的 最少糖果数目 。 解答这道题可以使用 贪心算法 进行解决。 我们可以先 初始化 每个孩子的糖果数量为 1然后从左往右遍历评分数组如果当前孩子的评分比前一个孩子的评分高就将其糖果数量设为前一个孩子糖果数量加一。这样可以确保相邻两个评分高的孩子分配到的糖果数量相差至少为1。 但是我们还需要从右往左遍历一遍评分数组来处理相邻两个评分高的孩子分配到的糖果数量相等的情况。如果当前孩子的评分比后一个孩子的评分高且当前孩子的糖果数量不大于后一个孩子的糖果数量就将其糖果数量设为后一个孩子糖果数量加一。这样既满足了相邻两个评分高的孩子分配到的糖果数量相差至少为1又解决了相邻两个评分高的孩子分配到的糖果数量相等的情况。 最后我们把每个孩子的糖果数量累加起来就可以得到需要准备的最少糖果数目。 具体实现逻辑如下 1. 首先创建一个与评分数组大小相同的糖果数组初始化为1表示每个孩子至少分配到一个糖果。 2. 从左到右遍历评分数组如果当前孩子的评分比前一个孩子高那么将当前孩子的糖果数目设为前一个孩子糖果数目加1。 3. 再从右到左遍历评分数组如果当前孩子的评分比后一个孩子高并且当前孩子的糖果数目不大于后一个孩子的糖果数目那么将当前孩子的糖果数目设为后一个孩子的糖果数目加1。 4. 最后计算糖果数组的总和即为最少糖果数目。 以下是一个Java代码实现 public class DistributeCandies {public static int distributeCandies(int[] ratings) {int n ratings.length;int[] candies new int[n];Arrays.fill(candies, 1); // 初始化糖果数组每个孩子至少分配到一个糖果// 从左到右遍历调整糖果分配for (int i 1; i n; i) {if (ratings[i] ratings[i-1]) {candies[i] candies[i-1] 1;}}// 从右到左遍历调整糖果分配for (int i n - 2; i 0; i--) {if (ratings[i] ratings[i1] candies[i] candies[i1]) {candies[i] candies[i1] 1;}}// 统计总的糖果数int sum 0;for (int candy : candies) {sum candy;}return sum;}// 示例调用public static void main(String[] args) {int[] ratings {1,0,2};System.out.println(distributeCandies(ratings)); // 输出3} }在这个示例中distributeCandies() 方法接收一个评分数组 ratings 并返回需要准备的最少糖果数目。 首先我们使用一个长度为 n 的数组 candies 来保存每个孩子的糖果数量初始值都为 1。 然后从左往右遍历评分数组如果当前孩子的评分比前一个孩子的评分高就将其糖果数量设为前一个孩子糖果数量加一保证相邻两个评分高的孩子糖果数量相差至少为1。 接着我们从右往左遍历评分数组如果当前孩子的评分比后一个孩子的评分高且当前孩子的糖果数量不大于后一个孩子的糖果数量就将其糖果数量设为后一个孩子糖果数量加一保证相邻两个评分高的孩子糖果数量相差至少为1。 最后我们把每个孩子的糖果数量累加起来得到需要准备的最少糖果数目。 在 main() 方法中我们提供了一个简单的测试案例将评分数组设为 [1,0,2]调用 distributeCandies() 方法进行计算期望的输出为3。
http://www.hkea.cn/news/14448032/

相关文章:

  • 辽宁建设厅官方网站做防护信息的网站
  • 做网站用的云控制台wordpress图片本地
  • 电商模板网站福永专业外贸网站建设公司
  • 学做视频的网站有哪些wordpress tag转专题
  • 企业网站建设网建小网站多少钱
  • 如何登录网站空间知乎网站建设
  • 网站开发 python 工具网站架构需求
  • 展示型网站建设方案书厦门制作网页公司
  • 帕绍网站建设网站建设拟解决问题
  • 起域名网站石家庄网站制作网页
  • 网站咨询弹窗怎么做最常见企业网站有哪些
  • 网站建设网页设计小江徐州市城乡和城乡建设厅网站
  • 企业网站设计html网站受到攻击怎么办
  • 湖北微网站建设费用wordpress手机跳转
  • 文登南海建设局网站阿里巴巴黄页网站
  • 要加强网站内容的建设wordpress首页调用评论
  • 网站建设与维护试题a卷大兴网站建设费用
  • 门户 网站开发周期合肥工程建设信息网站
  • 网站建设的数据库设计图企业网站建设如何去规划
  • 做响应式网站兼容哪几个尺寸做网站市场价
  • 耐克运动鞋网站建设规划书框架wordpress如何更改域名
  • 有名的wordpress网站网页制作设计框架
  • 济南网站制作 泉诺ppt免费下载的网站有哪些
  • 做网站多久能学会广告发布计划怎么写
  • 建网站价格 优帮云北京网站制作公司有哪些
  • html5 网站开发 适配企业建站怎么选择
  • server 2008 iis 部署网站敏捷开发平台
  • 个人网站有哪些站重庆公司注册代理公司
  • 卖保健品可以自己做网站卖吗东莞关键词优化效果
  • 网站单页面怎么做北京专业做网站怎么样