网络 [HNOI2016]】的更多相关文章

Description 一个简单的网络系统可以被描述成一棵无根树.每个节点为一个服务器.连接服务器与服务器的数据线则看做一条树边.两个服务器进行数据的交互时,数据会经过连接这两个服务器的路径上的所有服务器(包括这两个服务器自身).由于这条路径是唯一的,当路径上的某个服务器出现故障,无法正常运行时,数据便无法交互.此外,每个数据交互请求都有一个重要度,越重要的请求显然需要得到越高的优先处理权.现在,你作为一个网络系统的管理员,要监控整个系统的运行状态.系统的运行也是很简单的,在每一个时刻,只有可能…
正解:整体二分+树状数组 解题报告: 传送门! 亲这里的建议是用整体二分呢 dbq最近看sd淘宝说话体看多了有点脑抽,,, 首先考虑如果是单组询问怎么做昂QAQ 考虑二分答案 对于所有比mid小的操作都不用管 然后对于大于mid的操作,他们都是不应该存在的 怎么样就不会存在呢,那不然就是已经结束了不然就是经过了故障点嘛 所以如果能通过某种方式算出所有麻油结束的经过了故障点的链数就可以判断是否合法了嘛 然后这个其实是个比较典型的dfn序套路题,,,? 就是对每个修改就改链的两端+1(-1),两端的…
HNOI2016 Day1 T2 网络 Description 一个简单的网络系统可以被描述成一棵无根树.每个节点为一个服务器.连接服务器与服务器的数据线则看做一条树边.两个服务器进行数据的交互时,数据会经过连接这两个服务器的路径上的所有服务器(包括这两个服务器自身).由于这条路径是唯一的,当路径上的某个服务器出现故障,无法正常运行时,数据便无法交互.此外,每个数据交互请求都有一个重要度,越重要的请求显然需要得到越高的优先处理权.现在,你作为一个网络系统的管理员,要监控整个系统的运行状态.系统的…
4538: [Hnoi2016]网络 题意:一棵树,支持添加一条u到v权值为k的路径,删除之前的一条路径,询问不经过点x的路径的最大权值 考虑二分 整体二分最大权值,如果\(k \in [mid+1,r]\)中的路径有不经过x的,那么这个询问的答案在\([mid+1,r]\)中 链修改,点查询\(\rightarrow\)点修改,子树查询,方法是\(u,v +1\ ;\ lca,fa[lca] -1\) 用树状数组就可以完成 这里的整体二分不需要对每个询问保存当前贡献,因为每次只需要考虑一段的贡…
「HNOI2016」网络 我有一个绝妙的可持久化树套树思路,可惜的是,它的空间是\(n\log^2 n\)的... 注意到对一个询问,我们可以二分答案 然后统计经过这个点大于当前答案的路径条数,如果这个路径条数等于大于当前答案的所有路径条数,那么这个答案是不行的. 关于链修改单点询问,可以树状数组维护dfs序,然后每次修改链去差分修改 然后把二分答案拿到整体二分上去就可以了 Code: #include <cstdio> #include <cctype> #include <…
[LG3250][HNOI2016]网络 题面 洛谷 题解 30pts 对于\(m\leq 2000\),直接判断一下这个个点是否断掉一个交互,没断掉的里面取\(max\)即可,复杂度\(O(m^2\log n)\). 另20pts 对于无删除操作的,用线段树维护, 我们将一条路径的补集全部打上那条路径重要度的标记,这样我们断一条边时直接单点查询即可. 据说这样子再改改可以变成一种树剖加堆的做法,但是好像现在在bzoj被卡了 100pts 想到二分答案,若所有权值\(\geq mid\)的路径都…
4538: [Hnoi2016]网络 链接 分析: 整体二分. 对于一次操作,可以二分一个答案mid,判断权值大于mid的路径是否全部经过这个点.如果是 ,那么这次询问的答案在[l,mid-1]之间,否则在[mid,r]之间. 判断是否所有的路径经过一个点:等价于数经过这个点的路径条数,对于一条路径(u->v),可以在u,v处+1,在lca处-1,在fa[lca]处-1,然后询问一个点的子树和即可. 多次询问,整体二分即可. 代码: #include<cstdio> #include&l…
[HNOI2016]网络 LG传送门 表示乱搞比正解难想. 整体二分很好想吧. 但是为了好写快乐,我们选择三个\(\log\)的乱搞. 先树剖,线段树套堆维护区间最大值.对于一次修改,如果是插入,就把树上除了这条链的地方加上这个重要度,如果是删除则反之.注意线段树可以标记永久化,这里用的堆是一种(可能)叫懒惰堆的东西,直接看代码都能理解. //written by newbiechd #include <cstdio> #include <cctype> #include <…
[BZOJ4538][Hnoi2016]网络 Description 一个简单的网络系统可以被描述成一棵无根树.每个节点为一个服务器.连接服务器与服务器的数据线则看做一条树边.两个服务器进行数据的交互时,数据会经过连接这两个服务器的路径上的所有服务器(包括这两个服务器自身).由于这条路径是唯一的,当路径上的某个服务器出现故障,无法正常运行时,数据便无法交互.此外,每个数据交互请求都有一个重要度,越重要的请求显然需要得到越高的优先处理权.现在,你作为一个网络系统的管理员,要监控整个系统的运行状态.…
Luogu-3250 [HNOI2016]网络 题面 Luogu-3250 题解 CDQ分治...这个应该算是整体二分吧 二分重要度,按照时间从小到大加入大于重要度的边 对于一个询问,如果经过这个点的边数不等于加入的边数,那就说明有比重要度大而且不经过这个点的边,然后分成两部分继续做 看Candy?大佬的博客学会了一种加边方法:记录dfn序,对于一条边\(u\),\(v\).让端点的\(cnt\)++,\(lca\)和\(fa[lca]\)的--,找经过一个点边数只需要查询他的子树大小就好啦 代…