自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

YihAN_Z

ただのあほです

  • 博客(8)
  • 收藏
  • 关注

原创 BZOJ 3083 遥远的国度 树链剖分

题目大意:给定一棵有根树,有以下操作:换根,链上修改,子树查询最小值。树链剖分配合线段树可以轻松解决子树查询与链上修改,换根怎么办?当然不能真的换根。设初始根为root(也就是说树剖处理时是以root为根的),当前根为cur,对于每一次查询子树x进行讨论:

2016-12-31 08:46:08 312 1

原创 BZOJ 2733 [HNOI2012] 永无乡 Treap

题目大意:给出n个只有一个元素的集合,有以下操作:集合合并,查集合第k小。查询集合内第k小,平衡树可以搞。合并怎么办?启发式合并。暴力拆解一个size比较小的,保证每个点至多被拆log(n)次。如果俩点在一个集合里就不能再合并了否则会RE#include <cstdio> #include <cstdlib> #define N 100005 using namespace std; struct

2016-12-31 08:29:51 429 1

原创 BZOJ 2631 tree LCT

题目大意:给定一棵结点初始值为1的无根树,要求支持以下操作:链加,链乘,链求和,断一条边连一条边保证还是一棵树真·LCT模板题,标记最好是直接推给儿子(也就是标记跟自己没关系),推标记要先推乘后推加。#include <cstdio> #include <algorithm> #define N 100005 #define MOD 51061 using namespace std; #defin

2016-12-31 08:25:06 471 2

原创 BZOJ 3786 星系探索 Splay维护DFS序

题目大意:给定一棵有根树,有三种操作:询问结点到根的权值和,修改结点的父亲,子树加值。 由于有子树修改,LCT用不了啦。还有什么解决树上问题的方法呢?看看能不能转化成序列问题吧。 记录一下入栈出栈序,结点权值入栈存正出栈存负,结点到根的权值和即DFS序中从1加到该点入栈的位置。由于是DFS序,所以子树在序列中一定是连在一起的,这样修改父亲和子树加值都不用愁啦,整体移动/打一个加标记就好。动态序列

2016-12-27 14:23:52 596 1

原创 BZOJ 1711 Dining 吃饭 网络流

网络流重在建图。其中每一头牛对应一种饮料与食物。将饮料与食物放在两边,牛放在中间,对应连接边,cap(容量)设为1。其中要注意,一头牛只能对应一种饮料与一种食物,可能有多种食物指向一头牛,所以要把牛的结点分裂成两个,用边连接,cap为1。节点分配弄清楚。(邻接表加边一定要写函数不然代码辣目0。0)#include <cstdio> #include <cstring> #define INF 105

2016-12-24 15:02:33 296

原创 BZOJ 2002: [Hnoi2010]Bounce 弹飞绵羊 LCT

题目大意:给出一个森林,支持两个操作:修改边,输出点到所在树的根的距离LCT裸题。操作挺少的,只有Link和Cut操作(所以和到一起写了),维护一下Size即可。#include <cstdio> #define N 200005 using namespace std; struct Node{ Node *ch[2],*pa; int s; void maintain()

2016-12-13 19:34:33 375

原创 BZOJ 3531 [SDOI2014]旅行 树链剖分+线段树

题目大意:给定一棵节点为n的树,每个节点有一个颜色c(c<=n)和权值(正整数)。实现以下操作: 1.修改某个点的颜色 2.修改某个点的权值 3.询问两点间与这两个点同颜色的最大值 4.询问两点间与这两个点同颜色的和 保证询问的两点同色挺简单的一道树链剖分+线段树。给每个颜色开一个线段树,不过要动态开内存。空间复杂度O(nlogn)。 树链剖分一定要注意最后x,y两点在同一链上时也要统计

2016-12-11 15:59:02 415

原创 BZOJ 1500 【NOI2005 D1T2】 维修数列 Splay

题目大意:维护一个数列支持以下操作: 这个Splay有毒,抄模板请参照这里Splay裸题 可啪(?)的题,细节真的很重要 parent指针好像乱七八糟的样子,但是没用上… 在maintain操作前要先pushdown把标记推下去(标记也修改自己,不推标记的话不能保证信息的正确性) 子段和也要用自己的权值去更新这俩错误查一天…#include <cstdio> #include <algor

2016-12-10 19:23:33 472 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除