树链剖分基本操作: 1. 修改第i条边的权值。 2. 对树上一条路径的权值取反(正变负,负变正)。 3. 查询树上一条路径的权值的最大值。 因为要取反,所以要同时维护最大值和最小值。 1 #include<cstdio> 2 #include<cstring> 3 #include<algorith ...
分类:
其他好文 时间:
2020-08-18 13:36:03
阅读次数:
62
仍然是树剖模板题TT 线段树维护取反和最大值就同时维护最大最小值,取反时最大最小值取反交换即可 单点修改时记得把叶节点的lazy tag置0 ...
分类:
其他好文 时间:
2017-08-14 16:30:06
阅读次数:
207
1583. [POJ3237]树的维护 http://www.cogs.pro/cogs/problem/problem.php?pid=1583 ★★★☆ 输入文件:maintaintree.in 输出文件:maintaintree.out 简单对比时间限制:5 s 内存限制:128 MB 【题目 ...
分类:
其他好文 时间:
2017-05-21 09:46:42
阅读次数:
203
二次联通门 : COGS 1583. [POJ3237]树的维护 ...
分类:
其他好文 时间:
2017-05-20 09:59:05
阅读次数:
194
P1424 - [POJ3237]树的维护 P1424 - [POJ3237]树的维护 Description 给你由N个结点组成的树。树的节点被编号为1到N,边被编号为1到N-1。每一条边有一个权值。然后你要在树上执行一系列指令。指令可以是如下三种之一: CHANGE i v:将第i条边的权值改成 ...
分类:
其他好文 时间:
2017-03-26 14:33:10
阅读次数:
203
题意:在一棵N个节点,有边权的树上维护以下操作: 1:单边修改,将第X条边的边权修改成Y 2:区间取反,将点X与Y在树上路径中的所有边边权取反 3:区间询问最大值,询问X到Y树上路径中边权最大值 n<=10000 CAS<=20 思路:做了2天,改出来的一刻全身都萎掉了 边权转点权,点权就是它到父亲 ...
分类:
其他好文 时间:
2016-12-25 18:13:39
阅读次数:
242
【POJ3237】Tree Description You are given a tree with N nodes. The tree’s nodes are numbered 1 through N and its edges are numbered 1 through N ? 1. Eac ...
分类:
其他好文 时间:
2016-12-17 14:03:21
阅读次数:
267
两个更新操作,一个将第i条路径权值改为w,一个是将a-b之间所有路径权值取反。 一个查询操作,求a-b之间路径中权值最大的边。 很容易想到维护一个最大最小值,取反就是把最大最小取反交换一下。 开始遇到一个问题就是我把根节点赋值0,上一道题求和没问题,但是这道题会出问题,于是线段树建树的时候从2开始建 ...
分类:
其他好文 时间:
2016-10-01 16:54:45
阅读次数:
167
[http://poj.org/problem?id=3237] (题目链接) 树链剖分模板题,然而这150+行的程序我调了一天,历经艰辛,终于ac。。 题意:给出一个n个节点的带权树,要求维护操作:1.求出树上两点之间的边权的最大值;2.更改一条边上的权值;3.将树上两点之间的所有边权取各自的相反 ...
分类:
其他好文 时间:
2016-09-28 15:21:32
阅读次数:
210
Description You are given a tree with N nodes. The tree’s nodes are numbered 1 through N and its edges are numbered 1 throughN ? 1. Each edge is assoc ...
分类:
其他好文 时间:
2016-05-08 15:18:19
阅读次数:
240