题意:
多组数据、
给你一颗树,
然后求一条最长异或路径,
异或路径长度定义为两点间简单路径上所有边权的异或和。
题解:
首先无根树转有根树再在树上跑一遍算出每个点到根的异或和。
然后两点间异或路径长度就是a[i]*a[j]。
因为lca之前那一段都被异或了两次搞没了。
然后求个线性基,然后随便搞搞就可以?可以WA了!
因为那么算哪是简单路径啊,或者说,那特喵的...
分类:
其他好文 时间:
2015-02-04 16:40:01
阅读次数:
228
水题目。直接上代码了。
VIEW CODE
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
const int mmax= 10010;
const int mod=1...
分类:
其他好文 时间:
2015-02-03 17:25:37
阅读次数:
150
,只要知道dis[i][j]=dis[i][root]+dis[j][root]-2*dis[Lca(i,j)][root]. 其中root为树的根节点,LCA(i,j)为i,j的最近公共祖先。 所以我们先把所有的询问储存下来,然后离线直接查询。复杂度是o(n+q)的。
VIE#include
#include
#include
#include
#include
#include
#inc...
分类:
其他好文 时间:
2015-02-03 17:17:34
阅读次数:
160
题意:首先一个状态至多有3种跳的方法的~不能隔着格子跳的~
题解:
既然有三种方法,那么显然有两种是向外跳,一种是收敛着跳(往里)
然后这个就可以类比成父亲状态和子状态,
里兮为父,外则即子。(诶窝里斗的感觉,,这文言文有点喜感)
然后我们就发现步数是开始状态和结束状态都往里走,走到lca的步数。
或者说开始状态走到lca,然后再由lca走到结束状态。。...
分类:
其他好文 时间:
2015-01-29 09:39:28
阅读次数:
184
233……
【BZOJ1832】【AHOI2008】聚会
倍增lca
就是这道题。输入输出都没有改。
http://blog.csdn.net/vmurder/article/details/42607739
题解也在以前那篇博客里面。
代码:(直接复制的那篇博客)
#include
#include
#include
#include
#define N...
分类:
其他好文 时间:
2015-01-29 09:37:27
阅读次数:
187
Details not refined yet..struct Ret{ Ret(TreeNode *p, Mask rm) : pVal(p), m(rm){} TreeNode *pVal; Mask m;};class Solution {public: Ret lca...
分类:
其他好文 时间:
2015-01-27 07:03:07
阅读次数:
193
树分块 orz HZWER http://hzwer.com/5259.html 不知为何我原本写的倍增求LCA给WA了……学习了HZWER的倍增新姿势~ 树上分块的转移看vfk博客的讲解吧……(其实是先指向hzwer博客,再跳转vfk和KoribohG……) vfk讲的很详细,重点就在于...
分类:
移动开发 时间:
2015-01-26 01:16:41
阅读次数:
310
学习这位神犇的:http://blog.csdn.net/jiangyuze831/article/details/41476865注意:①排序时第一关键字是左端点所在块编号(块状树),第二关键字是右端点dfs序。②维护的当前链不能包括lca(l,r),但最后要计算上lca(l,r)的答案。③对l-...
分类:
移动开发 时间:
2015-01-25 13:50:04
阅读次数:
255
题意:给定一棵树,查询时给定两个点,求出两个点的距离。
暴力做肯定超时的。我的做法是采用lca(最近公共祖先)的离线算法,即tarjan算法(据说Tarjan提出了很多算法,可能还有很多tarjan算法),算法里用到了并查集。在输入完所有查询之后,在求出答案。tarjan算法的做法是:一开始vis数组初始化为0,从树根开始递归往下对点进行染色,刚到一个点的时候将vis取为-1,在继续递归...
分类:
编程语言 时间:
2015-01-24 09:02:19
阅读次数:
260
How far away ?
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 6309 Accepted Submission(s): 2368
Problem Description
There are n...
分类:
其他好文 时间:
2015-01-24 01:39:28
阅读次数:
221