随笔分类 - STL
摘要:果然我还是太菜了,爆了一天才过。。。。隔壁肉丝都不知道喊了多少句哎╮(╯▽╰)╭我又A了什么傻逼题(然鹅就是wf和国集的题QWQ) 其实这个题就是个裸题,但是我就是不会。。。 这个题第一步就是明显的旋转坐标系(不会的百度),注意要先平移坐标系再旋转 然后问题就变成x轴上下有一些线段,考虑覆盖长度为L
阅读全文
摘要:这个限制条件搞着就很难受,应该是要离线做的,也就是要找到不同询问的共同点才行 很容易想到,对于时间而言是g+r一个循环的,那我们就可以在模g+r意义下做然后我还以为gr很小呢 开始我想的是对一个询问扫一次,假如见到了红灯,一定要等,等完红灯后的时间节点是固定的,这样可不可以通过维护一些东西搞搞 然而
阅读全文
摘要:写一发暴力求五维偏序 其实道理也简单,就是对于每个维记录那些点比当前点小,最后每个维and一下就好 bitset优化下
阅读全文
摘要:怎么说呢,启发式合并真的是一个很玄学的东西啊 假如是一条链,那么答案就是LIS 对于一棵树,需要考虑当前点取不取。 假如当前点比下面所有LIS都要大,那么对于当前必选 假如只比一个LIS的最大值小,可以把这个最大值换成当前点权。 实际上,可以先把这个点权拿去替换他的lowerbound,前面的最大值
阅读全文
摘要:心态都崩了做了一上午。。。 首先想的就是把连续同正负性的合并起来,那么相邻数的正负性是反的。 然后我想的是建一个链表倒着删除到m 这个时候有一个奇妙的想法,把正的取和,放进链表里面的数都取绝对值,假如删掉正的可以看作少了一段,删掉负的可以看作把两个正的连在一起,按照数据备份那个退流的思想做 尴尬的是
阅读全文
摘要:乱搞可过。 注意是刚好等于S
阅读全文
摘要:今天是真的萎,切不动题,瞎写陈年老题找自信。。。 强行一波贪心猛如虎 先按毁坏时间排序,枚举,能修的就修,修不了就把前面耗时最长的拿出来和当前比较,假如现在需要时间更短就换 总之就是维护修了ans个的最快时间
阅读全文
摘要:神奇玩意@mocha STL大法好!这个用了个rope rope的部分简单操作
阅读全文
摘要:这题玄学贪心 每次选择next出现位置最大的删除 有一个小trick,就是每次找到在队列里面的,就要再插入一次更新next,而前面的next怎么也不可能最大可以忽视。 为啥离散化错了。。。而且说好的主存块的编号(不超过1,000,000,000)和1<=M<=N<=100,000呢(m去到了十亿而编
阅读全文
摘要:STL即玄学。。 一看过去就觉得要hash一下吧,顺便瞄了一眼hint那我就想mp记录hash值咯 然而修改不好搞啊。。。暴力重算肯定挂啊。。 %了一下发现原来可以用异或来离散化(感觉这个很看脸的样子) 把没有重复插入set,这样就不用穷举区间啦~ 边查找边删除不好弄啊。。这个RE了很久,s.end
阅读全文
摘要:神TM动态点分治。。 然而st表又双叒叕TM挂了 sbyzh
阅读全文
摘要:也是一道好题呀。 首先先把它转换成前缀和应该都想到了。 然后用st表把s的最小值的id存下来,那么想一想,对于当前的位置rid,s[rid]-s[lid](其中rid-R+1<=lid<=rid-L+1)就是一个和弦的方案,用优先队列维护s[rid]-s[lid]最大值,跑k次。 但是当当前这个li
阅读全文
摘要:这个不是超级大傻逼题吗。 当成为friend的时候就减去双方发过的微博 绝交的时候就加上 诶等等如果到最后都没友尽呢。。只能暴力set搞搞咯。
阅读全文
摘要:en跟前面那个种树的一样嘛 只是不是环,就在左右两边设INF的边界就好了。(mdzz(1<<31)爆int变成-2147483648了)
阅读全文
摘要:思路很妙啊。 我一开始就在想DP,但是时间必挂。 膜了题解才发现原来是贪心。首先如果没有限制左右不能选,那就很简单,那现在的做法就是给他一个反悔的机会 比如数列9 10 8 -1 那贪心一开始就选10,这时把数列变成:9+8-10 -1 = 7 -1 那么下一次选的就是7,相当于减的10抵消而选了9
阅读全文
摘要:哈哈set卡时过了。 set求前驱的方法:*--b.lower_bound(x) (想想写了splay的肉老师就很愉悦啊) 弄两个set,一个记录的是位置的值,一个是差值,MIN_SORT_GAP就很简单啊,插入的时候找前驱后继,然后mmin代表当前最小值就可以了。 对于MIN_GAP要记录当前位置
阅读全文
摘要:莫队。然后学了下bitset ORZ OZY巨佬 先莫队,然后乘法暴力枚举因子,减的话让bsa自己左移(右移应该也可以)x位然后就和原来的自己and一下,这样如果有1的位说明当前位和当前位+左移的位数是有的,也就是可以减出x。 然后加法可以转换为减法,具体的做法就是定上限为n+1,再定义一个bits
阅读全文
摘要:补写。 学了学用bitset优化floyd,做这题比用强联通缩点+DP方便多了。 bitset具体就是一串编码,比如说定义bitset<2100>b,b就是一个2100位的01串。 由于位运算的存在,那么folyd的时候可以省掉一个j的循环,直接用整个串和另一个串做或运算 就像这样 for(int
阅读全文
摘要:STL大法好。。。。
阅读全文