树分治&树链剖分相关题目讨论
预备知识
树分治,树链剖分
poj1741
•一棵有n个节点的树,节点之间的边有长度。方方方想知道,有多少个点对距离不超过m
题解
点分治模板题。详见我早上写的http://www.cnblogs.com/chouti/p/5836926.html
OrzFang Ⅸ
•有一棵n个点,边长为1的树,他要在树上选择一个大小为m的点集,使得这m个点两两距离相等。
方方方想知道这么做的方案数对998244353取模后的结果。
题解
首先肯定有一个中心点,使得这个点到m个点距离相等
那么枚举这个中心点,枚举距离,注意一个子树最多贡献一个点在点集,类似背包的统计方式合并一下。复杂度目测是大概
OrzFang X
•方方方有一棵n个点的树,每个点点权初始为0。你需要维护m个操作,每个操作为路径加,子树加,路径求和或子树求和。
题解
这题树剖肯定能做,做法类似NOI2015D1T2软件包啥的
每条重链用个线段树
子树修改视作修改一段编号连续的重链‘
路径修改就是修改和路径相交的重链
事实上,子树修改-路径求和这种可以不用树剖,对dfs序建线段树可以更好的解决
OrzFang XI
•方方方有一棵n个点,边长为1的树。他想知道,有多少个点对距离为质数。
题解
codechef PRIMEDST
类似poj1741的点分治,合并递归的结果的时候套上FFT
树分治&树链剖分相关题目讨论的更多相关文章
- [FJOI2014]最短路径树问题 长链剖分
[FJOI2014]最短路径树问题 LG传送门 B站传送门 长链剖分练手好题. 如果你还不会长链剖分的基本操作,可以看看我的总结. 这题本来出的很没水平,就是dijkstra(反正我是不用SPFA)的 ...
- 2018.11.03 NOIP模拟 树(长链剖分优化dp)
传送门 考虑直接推式子不用优化怎么做. 显然每一个二进制位分开计算贡献就行. 即记录fi,jf_{i,j}fi,j表示距离iii这个点不超过jjj的点的每个二进制位的0/10/10/1个数. 但直接 ...
- 【BZOJ3236】【AHOI2013】作业 线段树 分治 树状数组
题目描述 给你一个长度为\(n\)的数列,还有\(m\)个询问,对于每个询问\((l,r,a,b)\),输出1.区间\([l,r]\)有多少范围在\([a,b]\)的数:2.区间\([l,r]\)有多 ...
- 树上的构造 树分治+树重心的性质 Codeforces Round #190 (Div. 2) E
http://codeforces.com/contest/322/problem/E E. Ciel the Commander time limit per test 1 second memor ...
- HDU 3966 (树链剖分+线段树)
Problem Aragorn's Story (HDU 3966) 题目大意 给定一颗树,有点权. 要求支持两种操作,将一条路径上的所有点权值增加或减少ai,询问某点的权值. 解题分析 树链剖分模板 ...
- hdu 3966(树链剖分+线段树区间更新)
传送门:Problem 3966 https://www.cnblogs.com/violet-acmer/p/9711441.html 学习资料: [1]线段树区间更新:https://blog.c ...
- 「模板」 树链剖分 HLD
「模板」 树链剖分 HLD 不懂OOP的OIer乱用OOP出人命了. 谨此纪念人生第一次类套类. 以及第一次OI相关代码打过200行. #include <algorithm> #incl ...
- codevs 1228 苹果树 树链剖分讲解
题目:codevs 1228 苹果树 链接:http://codevs.cn/problem/1228/ 看了这么多树链剖分的解释,几个小时后总算把树链剖分弄懂了. 树链剖分的功能:快速修改,查询树上 ...
- 树链剖分+线段树 HDOJ 5029 Relief grain(分配粮食)
题目链接 题意: 分粮食我就当成涂色了.有n个点的一棵树,在a到b的路上都涂上c颜色,颜色可重复叠加,问最后每一个点的最大颜色数量的颜色类型. 思路: 首先这题的输出是每一个点最后的情况,考虑离线做法 ...
随机推荐
- SequoiaDB的数据分区操作
在SequoiaDB集群环境中,用户往往将数据存放在不同的逻辑节点与物理节点中,以达到并行计算的目的. 分区:把包含相同数据的一组数据节点叫一个分区,如上图绿色方块组成三个分区. 分区键:切分时,所依 ...
- PHP 只有登陆后才能浏览的简单实现
1.============================================================= 在你不想让别人直接进入的网页开头加一段代码: session_start ...
- Python之Redis操作
1.安装驱动 输入命令:pip install redis 2.直接使用驱动 import redis r = redis.StrictRedis(host='127.0.0.1', port=637 ...
- python SocketServer 源码分析
附上原文链接: http://beginman.cn/python/2015/04/06/python-SocketServer/
- 迭代器、泛型和增强For
Iterator hasNext next Iterator 迭代器 Collection提供了一个遍历集合的通用方式,迭代器(Iterator). 获取迭代器的方式是使用Collection定义的 ...
- mq消息队列
rabbitmq学习9:使用spring-amqp发送消息及同步接收消息 通过对spring-amqp看重要类的认识,下面来通过spring-amqp的发送消息及同步接收消息是如何实现的.有兴趣的朋友 ...
- try-catch-finally中return语句的执行
catch里return后还会执行finally吗??在java里,是的.但是值得注意的是,在存在try-catch-finally的方法中,return可能出现的位置有4个,在try中,在catch ...
- Java入门到精通——调错篇之解决MyEclipse 输入注册码后:Enter or update your subscription information.问题
这几天,我用MyEclipse做例子的时候总是出现下面图上面的提示: 不用看就是注册码到期了要注册.找了好几个注册码总是出现Enter or update your subscription info ...
- MAC下安装与配置MySQL [转]
一 下载MySQL 访问MySQL的官网http://www.mysql.com/downloads/ 然后在页面中会看到“MySQL Community Server”下方有一个“download” ...
- Mybatis 实现手机管理系统的持久化数据访问层
最近公司需要对客户手机进行管理并提供二维码存储手机串号的加密字符.供其他接入系统通过扫面二维码解析使用.系统提供手机信息管理,客户管理,用户管理功能. 1.使用到的POJO类 1.1 User pac ...