上一页 1 2 3 4 5 6 7 ··· 26 下一页
摘要: 有两种DP搞法,不过其实本质上是一样的。。。一种是按照题解上说的记录当前到i位,进位为j的种类数,转移的时候直接枚举在这一位上面放多少个1就好了。#include #include #include #include #include #include #include #include #incl... 阅读全文
posted @ 2014-11-13 22:25 acm_roll 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 树链剖分离线处理所有的增加操作。考虑如果在线性结构上面处理这样的问题,只要把增加区域的起始点+w,结束点的后面一个点-w,最终输出答案的时候只要扫描一遍就好了,现在通过树链剖分把树转化为类似的线性结构,用同样的方法处理即可。#include #include #include #include #i... 阅读全文
posted @ 2014-11-13 21:25 acm_roll 阅读(125) 评论(0) 推荐(0) 编辑
摘要: ZOJ上面这题内存限制太严格,裸的树套树主席树搞法过不去,BZOJ上面这个放的比较松,可以过。其实就是利用树状数组维护n颗主席树,然后利用前缀和性质求解第k大。#include #include #include #include #include #include #include #includ... 阅读全文
posted @ 2014-11-09 11:28 acm_roll 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 和上面一题一样的搞法,换了一种风格,感觉不容易错一些。#include #include #include #include #include #include #include #include #include #include #include #include using namespace... 阅读全文
posted @ 2014-11-07 20:46 acm_roll 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 今天第一次接触可持久化数据结构,还是有必要总结一下的。首先对于查找第k大的问题,先搞清楚怎么样通过利用N颗线段树来求解。如果是求全局第K大,那么可以把数字的值作为位置插入线段树,然后通过区间和+二分来找到第k个位置。因为是通过区间和来找第k大的,显然是满足前缀和性质的,所以查询l,r区间的第k打,就... 阅读全文
posted @ 2014-11-07 20:11 acm_roll 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 先找到LCA,然后当前目录和当前目录和目标目录LCA的深度差就是要回退的次数。#include #include #include #include #include #include #include #include #include #include #include #include usi... 阅读全文
posted @ 2014-11-07 15:46 acm_roll 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 实测查询量大概是25W左右,离线搞比较快.#include #include #include #include #include #include #include #include #include #include #include #include using namespace std;c... 阅读全文
posted @ 2014-11-07 15:09 acm_roll 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 傻缺模板题,练手速和正确率用。。#include #include #include #include #include #include #include #include #include #include #include #include using namespace std;const ... 阅读全文
posted @ 2014-11-05 21:56 acm_roll 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 这题对最简单的树链剖分做了一些变化,在链的转移过程中要考虑前后链相邻节点颜色是否相同。对于线段树,只要维护三个值,左端点颜色,右端点颜色还有区间颜色总数就好了。#include #include #include #include #include #include #include #includ... 阅读全文
posted @ 2014-11-05 09:52 acm_roll 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 单点替换,区间取相反数,区间求最大值,其实线段树里面只要保存最小值和最大值就可以了,取反之后最小值变成最大值最大值变成最小值。#include #include #include #include #include #include #include #include #include #inclu... 阅读全文
posted @ 2014-11-04 21:04 acm_roll 阅读(128) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 26 下一页