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

当阳网站建设必应收录提交入口

当阳网站建设,必应收录提交入口,沧州大型企业网站建设,ruby网站开发工程师招聘原题地址 解法一 排序贪心即可。思想为先计算出每一个怪兽到达城市的时间,然后排序,有小到大进行消灭,此时的下标可视作时间。当怪兽到达城市的时间超过或等于当前时间时,即已经到达了城市,游戏失败,下标…

原题地址

解法一

排序+贪心即可。思想为先计算出每一个怪兽到达城市的时间,然后排序,有小到大进行消灭,此时的下标可视作时间。当怪兽到达城市的时间超过或等于当前时间时,即已经到达了城市,游戏失败,下标即为消灭了多少个怪兽。O(nlogn) 时间复杂度主要在排序上。

    int eliminateMaximum(vector<int> &dist, vector<int> &speed) {int length = dist.size();vector<int> times(length);for (int i = 0; i < length; i++) {times[i] = (dist[i] - 1) / speed[i] + 1;}sort(times.begin(), times.end());for (int i = 0; i < length; i++) {if (times[i] <= i)return i;}return length;}

解法二

排序还是过于粗暴,不优雅。进一步思考优化,首先如果怪物到达的时间比怪物总数大,可以忽略,因为会尽可能先消灭到达时间快的怪物,而在怪物总数的时间时已经可以把所有怪物消灭了。相较于排序,这个解法不排序,将怪物到达的时间计数,然后从最小的开始进行怪物消灭。这时的下标不代表时间了,需要额外使用变量记录当前时间。

    int eliminateMaximum(vector<int> &dist, vector<int> &speed) {int length = dist.size();vector<int> times(length,0);for (int i = 0; i < length; i++) {int time = (dist[i] - 1) / speed[i] + 1;if (time >= length) continue;times[time]++;}int time = 0;for (int i = 0; i < length; i++) {if(!times[i]) continue;if(time+times[i]>i) return i;time += times[i];}return length;}
http://www.tj-hxxt.cn/news/118882.html

相关文章:

  • 苏通建设集团有限公司网站河北网站建设制作
  • 千万不要去苏州打工搜狗搜索排名优化
  • 在线做分析图的网站做网络推广怎么收费
  • 基于j2ee的网站开发设计开题报告seo建站
  • 个人网站内容有哪些内容百度推广介绍
  • 无锡网站制作哪家好效果好的东莞品牌网站建设
  • 做么户网站怎么去前置审批佛山网站定制
  • 长沙商业网站建设网页设计与制作教程
  • 东莞网站开发前三强吉林关键词优化的方法
  • 张掖专业做网站的公司寰宇seo
  • 一网学网站是真的吗怎么开网店新手入门
  • 珠海响应式网站建设价格国内最好用免费建站系统
  • 服装网站建设目标客户百度联盟推广
  • 做网站一天能赚多少钱搜索引擎搜索器
  • 个人简历模板网站名风seo软件
  • 当今做网站的流行seo零基础教学视频
  • 汕头网站建设推广方法软文广告图片
  • 如果做微商需不需要开个网站新闻头条今日新闻60条
  • 教你做cpa单页网站网络的推广方式有哪些
  • wordpress考试系统插件云南网站建设快速优化
  • 做网站的相关教程新东方
  • 新手学做网站 下载网络营销事件
  • 东莞网站建设报价整站seo优化哪家好
  • 徐州做网站管理的公司小吃培训机构排名前十
  • 局域网怎么做网站短视频seo排名加盟
  • 个人做外贸网站违法吗品牌seo是什么
  • 参考网是正规网站吗百度手机app
  • 做华为网站的还有哪些功能百度推广工作怎么样
  • 国美网站建设的特点搜索引擎名词解释
  • 网站程序建设中国新闻网