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

网站建设的经验做法网站的展现形式

网站建设的经验做法,网站的展现形式,wordpress主题tag标签页面代码,wordpress 深度优化2024.2.6 题目来源我的题解方法一 贪心优先队列 题目来源 力扣每日一题;题序:LCP 30 我的题解 方法一 贪心优先队列 思路:使用贪心的思想,从左到右遍历,若遇到加上当前房间的生命值后小于等于0,由于需要…

2024.2.6

      • 题目来源
      • 我的题解
        • 方法一 贪心+优先队列

题目来源

力扣每日一题;题序:LCP 30

我的题解

方法一 贪心+优先队列

思路:使用贪心的思想,从左到右遍历,若遇到加上当前房间的生命值后小于等于0,由于需要调整的次数最小,则贪心地将当前以及前面房间中生命值最小的移到末尾。直到遍历完所有房间。
具体:在遍历房间的过程中,将为负数的生命值加入到一个小根堆pq中,当计算完每个房间的生命值sum影响后,如果生命值sum小于等于0,则将堆顶元素取出,并使用外的变量other记录从小根堆pq中取出元素的和,这时需要在生命值中补回相应的生命值以及调整次数加1。当遍历完所有房间有,再将other的值重新加入到sum中,若最终的sum小于等于0,则表示无解。

时间复杂度:O(nlogn)。需要遍历一次数组O(n),并且遍历过程中存在优先队列的入队和出队操作O(logn)
空间复杂度:O(n)。最多所有的元素都为负数。

public int magicTower(int[] nums) {
//记录交换的次数int count=0;//记录和,有坑……可能出现整形溢出long sum=1;//交换到末尾的值的和int other=0;PriorityQueue<Integer> pq=new PriorityQueue<>();for(int i=0;i<nums.length;i++){int t=nums[i];//若为负数加入到小根堆if(t<0)pq.offer(t);//更新和sum+=t;//判断更新后的和是否小于等于0if(sum<=0){int temp=pq.poll();//补回生命值sum-=temp;//交换到末尾的和other+=temp;count++;}}//最终加上交换到末尾的负数和sum+=other;return sum>0?count:-1;
}

有任何问题,欢迎评论区交流,欢迎评论区提供其它解题思路(代码),也可以点个赞支持一下作者哈😄~

http://www.yayakq.cn/news/952785/

相关文章:

  • 虚拟货币网站建设绿化信息网站建设
  • 网站页面关键词都一样网站地图怎么设置
  • 北京商业设计网站wordpress evolution
  • 象山企业门户网站建设html5做网站导航
  • 自动发货网站建设网站首页确认书
  • 百度云加速 网站关键词微网站开发技术架构
  • 怎么用织梦做网站后台wordpress 用户评论
  • 网站ip域名查询access数据库网站开发
  • 交易所网站建设教程wordpress feed源
  • 外贸 企业网站 建设企业建网站一般要多少钱
  • 广东省农业农村厅网站三星网上商城发货速度
  • 自己如何免费做网站广西建设厅考试网站首页
  • 国内优秀网页网站新沂徐州网站开发
  • 新手网站建设教程ppt免费制作网站
  • wordpress建站案例智能网站建设背景
  • 小说网站建设笺池斋网页加速器安卓
  • 图书馆网站建设策划历下区网站建设公司
  • 西安做网站价格seo推广专员招聘
  • 比较好的建站系统东莞正规的免费网站优化
  • ps做设计想接私活在什么网站网站推广软件哪个最实惠
  • 网站建设交印花税吗潍坊网站建设策划方案
  • 网站开发过程及要求做神马网站优化快速排名软件
  • 没网站怎么做淘宝客如何创建网站名称
  • 阿里巴巴网站推广怎么做网站推广公司 优帮云
  • 做网站赚钱有哪些途径刷题网站建设
  • 在线A视频网站 一级A做爰片wordpress 4.1 主题
  • 可做ppt的长篇英文阅读网站邢台润联科技有限公司
  • 福建省住房和城乡建设局网站常州网站开发公司推荐
  • 常德建设企业网站网站关键词设置
  • 湖南网站开发哪家好青海网站设计高端