
离线处理
文章平均质量分 69
commonc
这个作者很懒,什么都没留下…
展开
-
BZOJ3653: 谈笑风生
题目大意:给一棵树,每次询问给定a,k,求三元组(a,b,c)的数量满足: 1.a和b都是c的祖先 2.a和b在树上距离不超过k 3.a,b,c互不相同 显然abc肯定形成竖着的一条链 分两种情况讨论:1.b在a的上方,也就是说对于任意合法的b,c可以在a的子树里随便选,这个方案数是可以原创 2016-05-29 12:10:55 · 727 阅读 · 0 评论 -
BZOJ3626: [LNOI2014]LCA
题目大意:给一棵树,q个询问,每次询问一个区间内的点与一个点的所有LCA的深度之和 很神的一道题啊... 首先对于每组询问,我们可以把这个区间内每个点到根的路径都+1,然后求被询问的点到根的路径和,就是这个询问的答案 然后我们可以把每组询问拆成两个,变成ans[R]-ans[L-1] 然后就可以离线,把0~n-1一个一个往里加,每次把它到根的路径+1,然后查询对应的那些询问就可以了原创 2016-05-11 07:59:05 · 975 阅读 · 0 评论 -
BZOJ2794: [Poi2012]Cloakroom
题目大意:n个物品有三个属性a,b,c,q个询问每次给出m,k,s,问能不能在物品中选出一些使得每个的a≤m,b>m+s,c的和正好等于k 看完题感觉无从下手.... 然后就去翻了题解,感觉还是挺水的.... 先离线,把询问按m排序,物品按a排序,这样就相当于每次添加物品,问能不能在正好凑出c的情况下让最小的b大于m+s 这就可以直接背包了.... 时间复杂度O(QlogQ+N*原创 2016-06-23 18:44:00 · 1367 阅读 · 0 评论 -
BZOJ2527: [Poi2011]Meteors
题目大意:有K次操作,每次操作给一段(或者两段)区间加一个数,然后在这段长度为m的区间内,每个点都有一个国家的接收器,每个国家都有一个值,求对于每个国家,他们的所有接收器的总和大于等于这个值的时间 整体二分的练手题...(之前好像写了挺长时间?) 二分答案,但是要对所有询问一起处理,二分完了答案之后我们可以把当前每个城市的陨石数量暴力算出来,然后把询问归成两类,第一类是已经满足条件了的原创 2016-10-09 15:14:28 · 828 阅读 · 0 评论