[bzoj3282]Tree (lct)】的更多相关文章

昨天看了一天的lct..当然幸好最后看懂了(也许吧..) 论善良学长的重要性T_T,老司机带带我! 这题主要是删边的时候还要判断一下..蒟蒻一开始天真的以为存在的边才能删结果吃了一发wa... 事实是只要两个点之间联通就能断开了,管它有没有边....整个就一模板题.. 交上去后跑得很慢(记录类型的锅)..但还是很短?(请自行无视过长变量名) #include<cstdio> #include<math.h> #include<iostream> #include<…
Description 给定N个点以及每个点的权值,要你处理接下来的M个操作. 操作有4种.操作从0到3编号.点从1到N编号. 0:后接两个整数(x,y),代表询问从x到y的路径上的点的权值的xor和. 保证x到y是联通的. 1:后接两个整数(x,y),代表连接x到y,若x到Y已经联通则无需连接. 2:后接两个整数(x,y),代表删除边(x,y),不保证边(x,y)存在. 3:后接两个整数(x,y),代表将点X上的权值变成Y. Input 第1行两个整数,分别为N和M,代表点数和操作数. 第2行…
1A爽,感觉又对指针重怀信心了呢= =,模板题,注意单点修改时splay就好,其实按吾本意是没写的也A了,不过应该加上能更好维护平衡性. ..还是得加上好= = #include <iostream> #include <cstdio> #define N 300010 using namespace std; int n,m; struct node { node *fa,*ch[]; int xor_sum,data; bool rev; node(int x); ];} ]…
传送门 又是权限题= =,过了NOIp我就要去当一只权限狗! LCT裸题,get到了两个小姿势. 1.LCA操作应该在access中随时updata 2.Link操作可以更简单 void Link(int noda,int nodb){Reverse(noda);t[noda].fa=nodb;} //BZOJ 3282 //by Cydiater //2016.9.16 #include <iostream> #include <cstdio> #include <cstr…
蛋蛋用链剖A的,我写的LCT 3282: Tree Time Limit: 30 Sec Memory Limit: 512 MB Submit: 1241 Solved: 542 [Submit][Status][Discuss] Description 给定N个点以及每个点的权值,要你处理接下来的M个操作.操作有4种.操作从0到3编号.点从1到N编号. 0:后接两个整数(x,y),代表询问从x到y的路径上的点的权值的xor和.保证x到y是联通的. 1:后接两个整数(x,y),代表连接x到y,…
Tree Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=93850#problem/F Description You are given a tree with N nodes which are numbered by integers 1..N. Each node is associated with an integer as the w…
转载请注明出处: http://www.cnblogs.com/fraud/          ——by fraud GCD Tree Time Limit: 5000/2500 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 84    Accepted Submission(s): 38 Problem Description Teacher Mai has a graph w…
LCT.. -------------------------------------------------------------------------------- #include<cstdio> #include<cstring> #include<algorithm> #include<iostream>   #define rep( i , n ) for( int i = 0 ; i < n ; ++i ) #define clr(…
LCT...略麻烦... -------------------------------------------------------------------------------- #include<cstdio> #include<algorithm> #include<cstring> #include<iostream>    #define rep( i , n ) for( int i = 0 ; i < n ; ++i ) #defi…
前言: Link-Cut Tree简称LCT是解决动态树问题的一种数据结构,可以说是我见过功能最强大的一种树上数据结构了.在此与大家分享一下LCT的学习笔记.提示:前置知识点需要树链剖分和splay. 引例: 在讲LCT之前先来看一道题:给一棵树,每个点有一个点权,多次操作,操作包含1.修改路径上点权2.查询路径上点权和.这道题显然用树链剖分+线段树就能做,但现在再加两个操作:3.删除树上的一条边4.连接两个点,保证连接后的联通块是一棵树.树的形态发生了改变,树链剖分+线段树这种静态数据结构显然…