12 2017 档案
摘要:A 题面 .题解传送门 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<queue> #include<cmath> typede
阅读全文
摘要:2-sat模板 输出方案 黄学长博客 传送门 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<vector> #include<q
阅读全文
摘要:2-sat模板 这篇博客写得非常好 传送门 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<vector> #include<qu
阅读全文
摘要:OJ 题解传送门 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<cmath> int T; double a,b,l,r; us
阅读全文
摘要:我的智商之低,简直举世无匹,旷烁古今,无与伦比. 在傻逼这件事上真是做到了极致. 不想说什么了. 传送门 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdi
阅读全文
摘要:lct裸题. 记得很久之前打算学lct的时候看着好难啊.结果是水题. 调了半天去看了眼别人代码,发现取相反数的时候忘了把本身的v取反了. 1 //Achen 2 #include<algorithm> 3 #include<iostream> 4 #include<cstring> 5 #inclu
阅读全文
摘要:传送门 写了一中午,被自己瓜得无话可说。 cdq的题,然后开始脑补。 写了第一个版本是考虑一半对另一半的贡献,贡献的那一遍维护单调性,没有考虑查询的一半的点之间的影响,一直偏大,14pt。 卡掉的数据: 5 1 5 5 4 2 1 3 2 4 3 然后不知道如何脑抽地写了第二个版本,树状数组乱搞,从
阅读全文
摘要:传送门 题目 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<vector> #include<queue> #include<c
阅读全文
摘要:一直心心念念着的splay模板。终于写了。 写了半个下午,然后半个晚上重构,半个晚上debug。 终于A了。。 码力真是弱的可怕。 二十分钟找到第一个bug,kth时忘了down。 然后剩下的一整个晚上才发现第2个bug,且是在同一个地方,应该是先down再判断找没找到。 又花了十分钟找到第三个bu
阅读全文
摘要:传送门 cdq模板 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<vector> #include<cstdio> #include<queue> #includ
阅读全文
摘要:隐藏在素数规律中的π 传送门 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<vector> #include<queue> #i
阅读全文
摘要:传送门 求补图的联通块个数。 补图非常大。 链表维护搜索。 把所有点加到链表中,每次取出链头,删掉,联通块个数++;扔进队列,取出队首,把原图跟他有连边的标记了,遍历一遍链表把没有标记的删除,入队,继续取出队首重复。 RE了半个下午发现建图边开小了。。 //Achen #include<algori
阅读全文
摘要:左偏树。 每个子节点维护大根堆,遍历一个儿子就往自己合并,合并发现钱不够了就删除队顶。 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #inclu
阅读全文
摘要:左偏树裸题。 题面描述让人意识到了平面几何的重要性。 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<vector> #inclu
阅读全文
摘要:精确覆盖问题是指对于给定的一个由0-1组成的矩阵,是否能找到一个行的集合,使得集合中每一列都恰好包含一个1。 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cst
阅读全文
摘要:将边按a排序,一条条加入,若当前的x,y未联通则直接加入这条边, 否则看当前边的b是否小于x,y,路径上最大的b,小于则拆掉该边,加入当前边。 显然可以用lct维护,splay维护b的最大值 把边拆成点权为b的点,点则是点权为0 Cut时找到改点,splay到根,切掉左右儿子 Link时加入新点,把
阅读全文
摘要:bzoj2049: [Sdoi2008]Cave 洞穴探测 给n个点,每次连接两个点或切断一条边,保证是树结构,多次询问两个点是否联通 Lct裸题 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cs
阅读全文
摘要:树上的带修莫队模板 分块用刚才的王室联邦分快法 然后套带修莫队模板 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<vector>
阅读全文
摘要:给定一棵树,要求将这棵树分成一些块,使每块大小在[B,3B]之间 首先任选一点开始深搜 维护一个栈 每个点退出递归时压栈 自下至上进行合并 如果某棵子树深搜完之后栈内元素数>=b 就把当前的栈内元素合并为一个块 但是这种方法存在一个问题 就是如果某棵子树深搜之后不到b 去深搜下一个子树 可能在下一个
阅读全文
摘要:块状链表模板题 然而我de了一整天bug,难受 rmemcpy常数小,大数据相比for大概有0.5s左右的差别 答案绝对不要一个一个地printf啊!t到死啊! memcpy存下来然后puts,直接从4.8s到0.9s啊啊 哭 //Achen #include<algorithm> #include
阅读全文
摘要:三维坐标系中,每次操作增加一个点或者询问一个区域内点的个数。 Kd-tree裸题(cdq套cdq裸题) 模仿treap在Kd-tree中插入节点,一定时间后重建整颗kd_tree //Achen #include<algorithm> #include<iostream> #include<cstr
阅读全文
摘要://Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<vector> #include<queue> #include<ctime> #
阅读全文
摘要:不旋转,基于split和merge操作的treap 又是三个模板 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<vector>
阅读全文
摘要:不平衡时暴力重构子树,可以说很少写且跑得很快 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<vector> #include<q
阅读全文
摘要:一道模板题。 然而和一维的差不多。 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<vector> #include<queue>
阅读全文
摘要:老张让弄专题,分到了数据结构,于是愉快地打了一周数据结构。 觉得还是要水一水bzoj,然后随便打开了一道,竟然是后缀数组模板。。 这周没写博客呀。。现在去补。。 //Achen #include<algorithm> #include<iostream> #include<cstring> #inc
阅读全文