dfs序+主席树 BZOJ 2588 当然树链剖分+主席树也可以?
2024-10-14 10:03:02
2588: Spoj 10628. Count on a tree
Time Limit: 12 Sec Memory Limit: 128 MB
Submit: 5822 Solved: 1389
[Submit][Status][Discuss]
Description
给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v,k),你需要回答u xor lastans和v这两个节点间第K小的点权。其中lastans是上一个询问的答案,初始为0,即第一个询问的u是明文。
Input
第一行两个整数N,M。
第二行有N个整数,其中第i个整数表示点i的权值。
后面N-1行每行两个整数(x,y),表示点x到点y有一条边。
最后M行每行两个整数(u,v,k),表示一组询问。
Output
M行,表示每个询问的答案。最后一个询问不输出换行符
Sample Input
8 5
105 2 9 3 8 5 7 7
1 2
1 3
1 4
3 5
3 6
3 7
4 8
2 5 1
0 5 2
10 5 3
11 5 4
110 8 2
105 2 9 3 8 5 7 7
1 2
1 3
1 4
3 5
3 6
3 7
4 8
2 5 1
0 5 2
10 5 3
11 5 4
110 8 2
Sample Output
2
8
9
105
7
8
9
105
7
HINT
HINT:
N,M<=100000
暴力自重。。。
思路:dfs下去,并且每次dfs往下面的时候都建一棵树,然后最后的按照这样子来询问:cnt[u] - cnt[v] - cnt[lca(u, v)] - cnt[par[lca(u,v)][0]].
最新文章
- maven中classpath路径(转)
- Android Permission中英对照
- python可分组字典
- shutil模块
- Oracle Essbase入门系列(一)
- membership 在web.config中配置信息
- 警告: [SetContextPropertiesRule]{Context} Setting property &#39;source&#39; to &#39;org.eclipse.jst.jee.server:20160928&#39; did not find a matching property
- 【转贴】全站 HTTPS 来了
- 解决windows10搜索不到内容的问题
- 完美解决VMware Workstation : Could not open /dev/vmmon: No such file or directory
- HTTP求
- Dictionary带来的一种隐式内存泄漏
- Ubuntu16设置Redis开机自启动
- IIS 7.0的集成模式和经典模式
- 解决刚刚安装完mysql 远程连接不上问题
- 宋体freetype16和12号字无法正常显示
- Silverlight中Image控件Stretch属性的四种值比较
- 【IT笔试面试题整理】二叉树中和为某一值的路径--所有可能路径
- AJAX的同步返回结果值
- STL-set and multiset