Monster Tower (堆 二分
添加链接描述
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=2e5+9;
int arr[N];int n,k;priority_queue<int,vector<int>,greater<int>> q;
int kill(int mid){while(q.size()){int x=q.top();q.pop();if(mid>=x)mid+=x;else {q.push(x);return mid;}}return mid;
}
bool check(int mid){while(q.size())q.pop();for(int i=1;i<=k;i++){q.push(arr[i]);}for(int i=k+1;i<=n;i++){int nx=kill(mid);if(q.size()>=k)return 0;else q.push(arr[i]),mid=nx;}int nx=kill(mid);if(q.size())return 0;return 1;
}
signed main(){std::ios::sync_with_stdio(0);cin.tie(0),cout.tie(0);int T;cin>>T;while(T--){cin>>n>>k;for(int i=1;i<=n;i++){cin>>arr[i];}int l=0,r=1e9;while(l<r){int mid=l+r>>1;if(check(mid))r=mid;else l=mid+1;}cout<<l<<"\n";}return 0;
}
Monster Tower (堆 二分相关推荐
- leetcode 911. Online Election | 911. 在线选举(加强堆 + 二分查找)
题目 https://leetcode.com/problems/online-election/ 题解 我的解法是,用预计算(加强堆,O(nlogn)) + 二分查找(用的自带TreeMap,查找复 ...
- [GYM103660] The 19th Zhejiang University City College Programming Contest 浙大城市学院校赛VP/S
后面俩小时吃饭睡觉去了- A B C D E F G H I J K L AC AC AC 补 补 AC AC AC AC AC – AC GYM103660A.Who is The 19th ZUC ...
- 【十九届浙大城市学院程序设计竞赛 - 周训】
Who is The 19th ZUCCPC Champion Jiubei and Overwatch Ah, It's Yesterday Once More Sum of Numerators ...
- 北京信息科技大学第十一届程序设计竞赛
Problem A kotori和糖果 https://ac.nowcoder.com/acm/contest/940/A 题意:合并,求代价最小值 题解:将一个堆二分,递归求该堆合并的最小代价,用m ...
- 2016-2017 ACM-ICPC CHINA-Final(7 / 12)
2016-2017 ACM-ICPC CHINA-Final A. Number Theory Problem(规律.签到) #include <bits/stdc++.h>using n ...
- 玩转算法面试-第三章
数组中常见的问题 排序: 选择排序:插入排序:归并排序:快速排序 查找:二分查找法 数据结构:栈:队列:堆 - 二分查找法: 1964年提出,没有bug的二分查找法是在1962年出现 对于有序的排列, ...
- 北京信息科技大学第十一届程序设计竞赛(重现赛)A kotori和糖果
链接:https://ac.nowcoder.com/acm/contest/940/A 来源:牛客网 题目描述 kotori共有n块糖果,每块糖果的初始状态是分散的,她想把这些糖果聚在一堆.但她每次 ...
- 剑指offer-python代码解释-习题解答-空白请点击阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u012505432/article/details/52071537 </div>< ...
- 第十九届浙大城市学院程序设计竞赛
I.Array Division 数组分组,要求每组的和大于等于0,求最多可以分成几组. #include<bits/stdc++.h>using namespace std;#defin ...
最新文章
- 从命令行到IDE,版本管理工具Git详解(远程仓库创建+命令行讲解+IDEA集成使用)
- GNU make manual 翻译(五十一)
- 中国大学moocpython笔记_用Python玩转数据,中国大学MOOC(慕课)答案公众号搜题
- C#面向对象设计模式第二讲:Singleton Pattern单件模式(创建型模式)
- [html] 怎样在<pre>标签内不转义<和>符号(原样输出html标签)?
- [你必须知道的.NET]第十九回:对象创建始末(下)
- maven docker 插件集成的几个小坑
- 计算机网络技术之网络系统设计与组建工程
- java hashmap 去重_java数组去重的两种方法
- Python 工匠: 异常处理的三个好习惯
- 内蒙古工业大学2022年数据结构习题集
- PostgreSQL数据库——Pigsty
- linux 声音设置,Linux aumix设置音效装置命令详解
- java合并word文档和添加分节符
- 流程图 FlowChart
- 数据中台与数据湖概念认知
- 前端 day02 CSS
- 牛客网刷题day21
- html桌面插件,js桌面虚拟键盘插件A-Keyboard
- IP地址常见分类:A类、B类、C类、D类、E类
热门文章
- Token登录原理分析
- 《生物化学与分子生物学》----酶的作用机理和酶的调节----听课笔记(十一)
- 计算机考研专业课938,中国地质大学938《分析化学》2018考研大纲
- 性能监控工具:SpotLight
- 几十个Shell分析日志文件脚本!
- 基于php微信小程序共享会议室预约系统设计与实现
- 《程序员升职记》/《Human Resource Machine》黑屏解决办法
- 第二章-空间众包(spatial crowdsourcing)概述
- html 苹果6尺寸,iPhone6/6 Plus的长度多少厘米?宽度多少厘米?
- [SQL Server无法连接到服务器]标题: 连接到服务器 --------- 无法连接到 ****