洛谷P4064 加法 [JXOI2017] 贪心
正解:贪心
解题报告:
首先最小值最大显然考虑二分?然后就二分一个值mid,从左往右考虑,对于小于等于mid的点显然可以求出这个点至少要加几次,然后找到覆盖这个点的右端点max的区间区间加上它要加的数就好
然后具体的操作和短路那题差不多,,,同差分+开个数组+全局变量,over
挺显然的贪心?不解释了QAQ
那就等下直接放代码了QAQ
(我怎么觉得我题解越来越简洁了鸭嘻嘻
- #include<bits/stdc++.h>
- using namespace std;
- #define il inline
- #define gc getchar()
- #define ri register int
- #define rc register char
- #define rb register bool
- #define rp(i,x,y) for(ri i=x;i<=y;++i)
- #define my(i,x,y) for(ri i=x;i>=y;--i)
- const int N=+,inf=1e9;
- int n,m,k,dat,a[N],b[N],c[N],l,r,ret;
- vector<int>nod[N];
- il int read()
- {
- rc ch=gc;ri x=;rb y=;
- while(ch!='-' && (ch>'' || ch<''))ch=gc;
- if(ch=='-')ch=gc,y=;
- while(ch>='' && ch<='')x=(x<<)+(x<<)+(ch^''),ch=gc;
- return y?x:-x;
- }
- il bool cmp(ri gd,ri gs){return gd>gs;}
- il bool check(ri x)
- {
- priority_queue<int>Q;ri as=,tot=;
- rp(i,,n)b[i]=max(,(x-a[i]+dat-)/dat);memset(c,,sizeof(c));
- rp(i,,n)
- {
- tot+=c[i];ri sz=nod[i].size();rp(j,,sz-)Q.push(nod[i][j]);
- while(!Q.empty() && tot<b[i])
- {
- if(Q.top()<i)return false;++tot;--c[Q.top()+];Q.pop();++as;
- }
- if(tot<b[i] || as>k)return false;
- }
- return true;
- }
- int main()
- {
- // freopen("4064.in","r",stdin);freopen("4064.out","w",stdout);
- int T=read();
- while(T--)
- {
- n=read();m=read();k=read();dat=read();ret=l=;rp(i,,n)a[i]=read(),nod[i].clear();r=inf;
- rp(i,,m){ri l=read();nod[l].push_back(read());}
- while(l<r){ri mid=(l+r)>>;if(check(mid+))l=mid+;else r=mid;}
- printf("%d\n",l);
- }
- return ;
- }
然后放个代码吼qwq
最后写个小细节,,,虽然我觉得一般人都不会错只有我比较傻逼没注意QAQ
就是它check会有很多次嘛,所以用队列的时候记得每次先清空
当然也可以选择就不开全局的queue,在check函数中定义,这样每次拿到的就是个空的队列辣QwQ
over!
洛谷P4064 加法 [JXOI2017] 贪心的更多相关文章
- 洛谷P4064 [JXOI2017]加法(贪心 差分)
题意 题目链接 Sol 这题就是一个很显然的贪心... 首先二分一个答案,然后check是否可行.check的时候我们需要对每个位置\(i\),维护出所有左端点在\(i\)左侧,右端点在\(i\)右侧 ...
- 洛谷P1966 火柴排队 贪心+离散化+逆序对(待补充QAQ
正解: 贪心+离散化+逆序对 解题报告: 链接在这儿呢quq 这题其实主要难在想方法吧我觉得?学长提点了下说用贪心之后就大概明白了,感觉没有很难 但是离散化这里还是挺有趣的,因为并不是能很熟练地掌握离 ...
- [洛谷P1417 烹调方案]贪心+dp
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3211Dream City Time Limit: 1 Second ...
- 洛谷P3826 蔬菜 [NOI2017] 贪心
正解:贪心 解题报告: umm,,,其实我还不会 废话我这么菜怎么可能懂QAQ 先占坑,想学习这题很久了呢QAQ
- 【洛谷】【堆+贪心】P1484 种树
[题目描述:] cyrcyr今天在种树,他在一条直线上挖了n个坑.这n个坑都可以种树,但为了保证每一棵树都有充足的养料,cyrcyr不会在相邻的两个坑中种树.而且由于cyrcyr的树种不够,他至多会种 ...
- 【题解】期末考试 六省联考 2017 洛谷 P3745 BZOJ 4868 贪心 三分
题目传送门:这里是萌萌哒传送门(>,<) 啊♀,据说这题有个完全贪心的做法,但是要维护太多东西好麻烦的(>,<),于是就来口胡一发三分的做法. 思路很简单,假设我指定了一个x, ...
- 洛谷P2127 序列排序 [贪心]
题目传送门 题目描述 小C有一个N个数的整数序列,这个序列的中的数两两不同.小C每次可以交换序列中的任意两个数,代价为这两个数之和.小C希望将整个序列升序排序,问小C需要的最小代价是多少? 输入输出格 ...
- 洛谷 P4704 太极剑【贪心】
首先考虑分割线能分割一条线当且仅当分割线一个端点在这条线的ab中间,另一端点在外面,也就是分割线对应的一条弧不能同时有这条线的两个端点 每条线的两端点都染同色,然后分段,一段里面颜色互不相同,分割线就 ...
- 洛谷 - P2887 - 防晒霜Sunscreen - 贪心
https://www.luogu.org/problemnew/show/P2887 感觉可以: 把防晒霜拆点限制流量为瓶数,奶牛拆点限制流量为1,当某个防晒霜与奶牛匹配时连一条边,求最大流.但是这 ...
随机推荐
- OllyScripts 0.92帮助文档
-------------------------------Olly脚本插件v0.92 制作: SHaG文档汉化:ZMWorm[CCG][TT]E-Mail:TranslationTeam[at]1 ...
- Netbeans rcp中获得本地文件系统路径
通过file协议 —————————————————————————————————————————————————————— URL url = new URL("file:///E:/A ...
- MQTT 学习记录
学习mqtt协议,从网上找demo验证一下. 参考链接 https://www.jianshu.com/p/ebbe25d1c4b2 https://blog.csdn.net/xxmonstor/a ...
- 一个整型数组里除了一个数字之外,其他的数字都出现了两次。要求时间复杂度是O(n),空间复杂度是O(1),如何找出数组中只出现一次的数字
思路分析:任何一个数字异或它自己都等于0,根据这一特性,如果从头到尾依次异或数组中的每一个数字,因为那些出现两次的数字全部在异或中抵消掉了,所以最终的结果刚好是那些只出现一次的数字. 代码如下: #i ...
- 网络编程 -- RPC实现原理 -- Netty -- 迭代版本V2 -- 对象传输
网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——Netty -- 使用序列化和反序列化在网络上传输对象:需要实现 java.io.Serializable 接口 只能传输( ByteBuf ...
- 大杂烩 -- 简析TCP的三次握手与四次分手
基础大杂烩 -- 目录 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - ...
- ThinkingInJava 学习 之 0000001 一切都是对象
-- -- -- -- -- -- -- -- -- 大杂烩 -- Java内存布局[图]以及java各种存储区[详解] -- -- -- -- -- -- -- -- -- 1. 用引用操纵对象 在 ...
- error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2
使用VS2013版本引用外部的lib进行编译时候提示: 错误 25 error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(jrtpl ...
- MySql表结构修改详解
修改表的语法=========================增加列[add 列名]=========================①alter table 表名 add 列名 列类型 列参数[加的 ...
- 10.5Djang admin 管理工具
2018-10-5 17:30:57 Django admin 管理工具 参考连接: https://www.cnblogs.com/yuanchenqi/articles/8323452.html ...