因为要求异或和最大,所以可以考虑从高位开始,向低位枚举尽可能接近~x的值,所以以二进制位为关键字,建立可持久化trie树,根据异或和的性质,XOR_SUM{i,j}=XOR_SUM{1,j} xor XOR_SUM{1,i-1},所以查询问题也可以解决了。 1 #include 2 #includ....
分类:
其他好文 时间:
2015-12-31 07:11:06
阅读次数:
577
fail树上建可持久化树。根据原题中给定的输入跑就可以跑出一颗trie树,然后对这个trie数建fail树。我最开始的思路错了:A串在B串中出现的次数就是看B中有多少节点可以直接或者说间接的指向A的子树。举个反例:A = aaa,设A的子树是一个点为b,B = aaab,那么B将会有两个指针指向A的...
分类:
其他好文 时间:
2015-12-28 11:54:36
阅读次数:
173
题意:一个村子有n个房子,他们用n-1条路连接起来,每两个房子之间的距离为w。有m次询问,每次询问房子a,b之间的距离是多少。分析:近期公共祖先问题,建一棵树,求出每一点i到树根的距离d[i],每次询问a。b之间的距离=d[a]+d[b]-2*d[LCA(a,b)];LCA(a,b)是a,b的近期公...
分类:
编程语言 时间:
2015-12-22 13:06:25
阅读次数:
200
题解摘要:树链剖分后用线段树区间查询修改,对于安装软件,将改点到根的路径全部变为1,对于卸载软件,将子树清空。注意边界,编号是从0开始的,容易漏掉树根。第一次写树剖~ 1 #include 2 #include 3 #include 4 #include 5 #include ...
分类:
其他好文 时间:
2015-11-19 16:30:11
阅读次数:
182
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5524问一棵完全二叉树有多少种子树包含的节点数量不同。首先可以肯定的是,一棵完全二叉树有可能是满二叉树,满二叉树的子树依然是满二叉树。但是完全二叉树的子树有一棵是满二叉树,另一棵是完全二叉树。根据给定节点...
分类:
其他好文 时间:
2015-10-31 22:57:15
阅读次数:
258
根目录文件:m_strRootPath.Format(_T("%ssyswsp"), __main_home__);m_strRootPath存放的是根目录文件路径。例如:Windows\\:release\\:syswspBrowerFile(0, m_strRootPath); 1 void U...
分类:
其他好文 时间:
2015-10-22 17:20:09
阅读次数:
172
1、struts2与struts1的区别2、声明式事务是什么,怎么实现?3、ajax两种请求方式4、java中string str=new string("ss")创建了个几个对象内存分配如何?java 虚拟机分为堆区、栈区、代码区、树根区,创建了一个对象,在堆中有一个内存,保存的是"ss",这个字...
分类:
编程语言 时间:
2015-10-21 19:18:20
阅读次数:
161
首先我们先拿一个例子来讲吧,这样比较形象直观。二叉树的遍历大概分为四种,分别是前序遍历,中序遍历,后序遍历,按层遍历,我们先讲一下怎么前序遍历,就是先访问根节点------左子树------右子树,如下图所示中序遍历就是先访问左子树---根节点--右子树,这个顺序。遍历的结果如下图所示然后就是后序遍...
分类:
其他好文 时间:
2015-10-09 15:14:28
阅读次数:
219
题目大意N个节点构成一棵树形结构,在其中若干个节点上放置士兵,与被放置士兵的节点相连的边会被士兵看守。问需要至少在多少个节点上放置士兵,才能使得N-1条边都被看守。题目分析题目描述的结构为树形,且最优化问题,可以考虑使用树形动态规划来解决。将结构按照树根在上,树叶在下的结构进行排列,为了保证无后效性...
分类:
其他好文 时间:
2015-10-06 12:49:49
阅读次数:
297
上运筹学课的时候,想起数据结构里学的树和图;学DOM文档结构的时候,又想起数据结构里的树,根节点,兄弟节点,叶子节点;学习线代的时候,又想起了当初学数据结构里的矩阵;后来又陆续的学Java,JavaScript,PHP,才发现面向对象的思想是多么的重要,才恍然明白数据结构和C++这两课为之后的学习带...
分类:
其他好文 时间:
2015-10-01 21:42:27
阅读次数:
191