考点:灵活使用STL
文章平均质量分 66
Freopen
这个作者很懒,什么都没留下…
展开
-
【转载】STL中的Complex
原文链接:https://blog.csdn.net/jingza/article/details/77334417这expexpexp和sqrtsqrtsqrt感觉好强的样子。转载 2019-12-20 20:05:20 · 183 阅读 · 0 评论 -
有先后限制的一类贪心问题
LOJ#2509. 「AHOI / HNOI2018」排列这个题实质上是一棵树上满足父亲比儿子先选,第i个选的点xxx的有i∗w[x]i*w[x]i∗w[x]的贡献,求最大贡献。可以发现w[x]w[x]w[x]最小的应该尽可能先的被选。于是我们考虑将最小的点xxx和faxfa_xfax缩为一个点。然后我们考虑到缩为一个点之后的新www是一个问题。考虑两个没有限制的树的先后选关系,缩为两...原创 2019-07-07 19:23:52 · 221 阅读 · 0 评论 -
LOJ #2561. 「SDOI2018」物理实验(扫描线 + set)
题目先扫描线,答案只可能在线段端点处取到。然后就是求第一个被当前点射中的线段。这个可以旋转坐标轴然后像做平面图的点定位那样做,用set来维护线段的远近。因为线段不交,所以两条线段的先后关系不会变化,可以直接玩set。...原创 2019-05-22 20:37:43 · 216 阅读 · 0 评论 -
Codeforces Educational Codeforces Round 64 G Optimizer(造计算机题?)
题目给出一系列的计算机简单语句,求无论每个变量的值怎么变,答案仍为原程序答案的最少行数程序(你可以自己增加新变量但是这个新变量也要满足条件)。题解:首先可以感受到这个题很强大,一定有高超的技巧无数的细节。首先我们对于直接===的语句显然是需要简化的。其次我们对于计算的表达式相同的变量也是可以简化的。(注意不满足结合律,所以a#b#c#d!=(a#b)#(c#d))然后我们发现每个值可...原创 2019-05-04 17:24:37 · 141 阅读 · 0 评论 -
关于sort的cmp写法
有一些cmp写法会使得sort卡死。经过实验,发现需要不存在有两个元素u,vu,vu,v使得cmp(u,v)=1,cmp(v,u)=1cmp(u,v) = 1 , cmp(v,u) = 1cmp(u,v)=1,cmp(v,u)=1,否则就有可能在大数据下卡死。(当然显然不能排序的也会卡死)注意是可以cmp(u,v)=0,cmp(v,u)=0cmp(u,v)=0,cmp(v,u)=0cmp(u,...原创 2019-04-01 09:03:02 · 842 阅读 · 0 评论 -
set如何简单求取次小值
#include<bits/stdc++.h>using namespace std;int main(){ set<int>s; s.insert(1),s.insert(2),s.insert(3); printf("%d %d %d\n",*++++s.begin(),*++s.begin(),*s.begin());}如上。原创 2019-03-26 16:10:56 · 789 阅读 · 2 评论 -
BZOJ3439 KPM的MC密码
题目大佬博客稳。好强。AC Code:#include<bits/stdc++.h>#define S1 129#define S2 131#define LL long long#define maxn 100005using namespace std;int n;char s[1000005];map<pair<LL,LL>,vect...转载 2019-03-21 16:35:18 · 160 阅读 · 0 评论 -
雅礼集训Day2T2 color(各种暴力优化) (O(1)RMQ的妙用)
题意:长度为n的数列A,m次询问,每次给出一个区间,求区间内不同数字的种数。还有一堆恶心的限制。1.强制在线(暴力优化神器莫队直接被ban)2.内存8M (并不是特别暴力的主席树和线段树被疯狂针对)3.1s,上述所有数字都是1e5级别的(暗示考点:卡常数(底层优化))。part1:卡内存怎么办?tsy大佬说过,当线段树被卡内存时就要分块。tsy大佬还说过,分块这么简单,不就是个优化的暴力吗?par...原创 2018-07-02 22:09:55 · 200 阅读 · 0 评论 -
雅礼集训2017Day7事情的相似度
bitset帮助离线合并实现O(n/w)然后暴力就可以在n=100000时为所欲为其实还是有点思想,从大到小枚举height值,这样每次涉及到的问题的答案一定是height另外离线会MLE?那就分两次离呗。没有什么是一次离线解决不了的,如果有,那就两次。//从height大到小更新可以简化转移,因为height的最小值一定是你当前枚举的那一隅#include#include#include原创 2018-01-18 17:44:36 · 784 阅读 · 1 评论 -
送你一朵圣诞树
贪心解决。这种考虑前后顺序的题目的常见做法是前后比较将优先级排序,再用并查集辅助合并。善用STL:如果要维护一个堆的话,可以用set,最方便,STL的heap太麻烦,优先队列可能被卡。注意,set中如果自定义了比较函数(还是比较复杂的那种,如本题的贪心),那么set.find()很有可能RE(不是找不到而是卡死),直接erase就行,find还是不要用了,如果要用multise原创 2018-01-22 20:38:20 · 218 阅读 · 0 评论