- 博客(6)
- 收藏
- 关注
原创 【codevs2343】简单题【位运算】【卡常大法好】
这道题的题意十分浅显易懂。 有一串很长很长不知道有多长(最长十万)的01序列,一开始全是0. 要你维护两种操作:将一个区间内的数翻转(就是1变0,0变1,就是异或1)、询问某一位是0还是1. 树状数组的裸题啊。 但是我使用了传说中的卡常数大法~~~ 直接暴力修改,但是把64个01位压进了一个unsigned long long。 这样修改是O(n)的,但是常数奇小- - 不过位运算坑
2015-02-28 10:38:17 773
原创 【poj1459】Power Network【模板题】【最大流】
传送门:http://poj.org/problem?id=1459 别的没啥好说的,就是另设一个超级源S和超级汇T,把所有Power Station连到S上,把所有Consumer连到T上,然后Dinic一下就行了~ (我数组又开小了T_T) #include #include #include #include using namespace std; struct Dinic{ #de
2015-02-18 14:38:57 787
原创 【bzoj3196】二逼平衡树【树套树】【线段树】【平衡树】【呵呵】
…… 我承认我写change函数时确实213了- - a[pos]应当在最后被修改,可我却忘了…… 第一次交上去的时候爆了数组,WA了…… 然后把数组开大,交上去,MLE了…… 现在我证明长度为n的序列,他的平衡树节点数组只要开到(log(2,f(n))+1)*f(n)就绝对不会爆。 f(n)是指比n大的最小的2的幂,比如f(65535)=65536,f(65537)=2^17. 证
2015-02-17 16:31:11 811
原创 【bzoj3098】Hash Killer II【丧心病狂的大水题】
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=3098 hint说的有道理。 如果你从n个数里随机选数,那么大约选根号n次就能选到一样的(当然选了n次还没碰上是因为RP太好了- -)。 这是著名的“生日攻击”问题,详情请看这里。 代码很短: PS:貌似加了srand(time(NULL))会RE...... #includ
2015-02-16 11:23:49 1257
原创 poj2777:Count Color
就是给你一个1..L的线段,不停地染色,并询问区间上由多少种颜色组成。 由于颜色数很小(不大于30),便可以用一个32位整数来表示颜色的集合。 自底向上更新是做集合的并(就是按位或)。 同样只有在纯色时才需要下传标记。 敬请指教,神犇轻喷0v0
2015-02-15 21:15:19 509
原创 【bzoj1493】项链工厂【线段树】
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1493 这题可以用线段树,不过要额外维护左端点颜色、右端点颜色,以及这条线段上颜色有几个“部分”。 下传标记,当且仅当当前线段是纯色的时候(否则它下面一定有更晚染色的线段)。 吐槽一下,我写pushdown的时候把数组名rc写成了lc...... 真是人民群众喜闻乐见。 敬请指教,神
2015-02-15 19:08:11 643
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人