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

青海网站建设西宁网络科技公司百度热议怎么上首页

青海网站建设西宁网络科技公司,百度热议怎么上首页,erp软件免费版下载,wordpress 多用户插件n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。 你需要按照以下要求,给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果。相邻两个孩子评分更高的孩子会获得更多的糖果。 请你给每个孩子分发糖果,计算并返回需要准备的…

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

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

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

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

思路一:模拟题意

int candy(int *ratings, int ratingsSize)
{int ret = 1, inc = 1, dec = 0, pre = 1;for (int i = 1; i < ratingsSize; i++)                       // 由于第0个孩子已赋初值,故从第1个孩子开始遍历if (ratings[i] >= ratings[i - 1])                       // 递增数列和两元素相等可同时处理,只需在下面加一个判断即可{dec = 0;                                            // 前方递减序列长度为0pre = (ratings[i] == ratings[i - 1]) ? 1 : pre + 1; // 若相邻两孩子评分相同,则只给当前孩子1个糖果,否则比前一个多1ret += pre;                                         // 累加当前糖果数inc = pre;                                          // 递增数列恰好从1开始递增,故inc = pre}else{dec++;          // 递减数列长度+1:由于初始dec = 0,故此时dec恰好为当前递减数列长度if (dec == inc) // 递增数列长度 = 递减数列长度dec++;      // 递减数列长度+1,将前方最近递增序列末尾元素归并入递减序列ret += dec;     // 递减序列中的每一个元素均+1,共+decpre = 1;        // 递减数列当前(末尾)元素糖果数为1}return ret;
}

分析:

本题要求需要准备的最少糖果数目,理解题意可以知道每个孩子向左右两边满足递减的要求,可以编写一个for循环,判断是否为一个递增数列,分别从两边不断向另一边求得最大值,最后将所有的数总和输出即可解决

总结:

本题考察对数组的应用,理解题意并想到两边分别向另一边求递增数列即可解决

http://www.khdw.cn/news/8466.html

相关文章:

  • 做外卖在哪个网站做好seo培训
  • 网站模游戏推广员到底犯不犯法
  • 广告装饰 技术支持 东莞网站建设怎么做产品推广和宣传
  • 如何使用wordpress模板北京网站优化步
  • 北京快三是官方的吗沈阳关键字优化公司
  • 盐城网站建设找宇联做个网站
  • 农村电商网站建设方案已备案域名30元
  • 怎么做门户网站电商运营工资一般多少钱一个月
  • 做网站用的搜索引擎营销简称
  • 公司网站必须做可信认证吗百度学术论文查重免费检测
  • 计算机学院网站建设培训方案及培训计划
  • 怎么在服务器做网站网站服务器失去响应
  • 石家庄网站建设教程百度百度一下一下
  • 商丘简淘网络科技有限公司seo优化托管
  • 网站建设丿金手指下拉手游推广平台
  • 郑州企业网站推广网站制作出名的公司
  • wordpress漫画在线2021百度新算法优化
  • 大连网站制作最好的公司广西seo搜索引擎优化
  • 动物自己做的网站百度推广关键词排名在哪看
  • 网站后台管理系统界面如何开网站详细步骤
  • 昆明做网站建设有哪些长春百度seo公司
  • 无锡建站模板系统重庆公司网站seo
  • 网站的版式网络营销网站分析
  • 购物网站首页设计百度公司高管排名
  • 北京工程信息网官网我赢网seo优化网站
  • 网站怎么做数据备份模板免费下载网站
  • 和黑人做网站新东方烹饪学校
  • 网站安全检测官网学校招生网络营销方案
  • wordpress回复看内容长沙seo网络公司
  • 南京网站设计价格推广平台排行榜有哪些