自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 【BZOJ 4520】【CQOI 2016】K远对

kd树很早就像练一下了但是一直拖到现在。网上找了很多玄学的资料都看不懂,但是直接做了题后马上就懂了。 首先考虑k=1、也就是最远对时的kd树做法。 kd树可以看做每次对k维空间二分。一维就是二分,二维就是想切正方形一样先切成两半,然后再切一刀变成四个小正方形。每次取出一个点,假设目前找到的最大距离为d,就要找有没有和当前点距离大于d的点。如果暴力搜索复杂度是平方,但是如果用kd树,预先存下“当前

2017-02-27 18:25:10 318

原创 【BZOJ 4513】【SDOI 2016】储能表

对每一位数字考虑,假设横坐标和纵坐标为x和y,对于每一位的(x,y)都有4种情况。 令f/g[i][a][b][c]表示第i位上: a=0:x#include<cmath>#include<cstdio>#include<vector>#include<cstring>#include<iomanip>#include<stdlib.h>#include<iostream>#inc

2017-02-27 18:07:44 490

原创 【BZOJ 4557】【JLOI 2016】侦查守卫

鉴于省选杂题题意实在过于复杂QAQ之后就直接上题解了 这题如果想不出来正解的话。。估计只能拿10分,d=1的20分不知道能不能乱搞一发。。后面的几个点毫无区分度啊 令: f[i][j]表示i这个节点下面j层以下都被覆盖的代价 g[i][j]表示以i这个节点为根的子树、以及向上长度为j的一条链都被覆盖的代价从下往上dp显然。这个g数组我一开始想到了,因为当前i这个点对上面的影响只有

2017-02-27 17:56:23 467

原创 【BZOJ 3626】【LNOI 2014】LCA

BZOJ 3626题意给你一棵树,定义根节点的深度为1。 有若干询问,每次询问l r z,求出[l,r]所有节点和z节点的公共祖先深度之和。(模201314)样例输入5 2 0 0 1 1 1 4 3 1 4 2样例输出8 5SOL我真的很想吐槽这道题作为一道省选题没有部分分! 所以这道题目是不是只有0分和100分QAQ 首先考虑一下一组操作怎么做。首先你要想到差分,也就是说[l

2017-02-20 18:52:52 278

原创 【BZOJ 4034】【HAOI 2015】树上操作

BZOJ 4034题意给你一棵树和边权,然后有若干个操作,操作分为三种: 操作 1:把某个节点x的点权增加a; 操作 2:把某个节点x为根的子树中所有点的点权都增加a; 操作 3:询问某个节点x到根的路径中所有点的点权和。样例输入5 5 1 2 3 4 5 1 2 1 4 2 3 2 5 3 3 1 2 1 3 5 2 1 2 3 3样例输出6 9 13SOL其实这题的

2017-02-20 18:43:37 314

原创 【BZOJ 4326】【NOIP 2015 d2t3】运输计划

题意给你一棵树和边权,有若干条航线,从树上的一个点到另一个点。令运输时间为所有航线所需要的时间中的最长时间。你可以将某一条边的权值变为0,求这个最长时间的最小值。样例输入6 3 1 2 3 1 6 4 3 1 7 4 3 6 3 5 5 3 6 2 5 4 5样例输出11SOL先讲一下部分分毕竟这是一道联赛题。 1、首先想到就是预处理lca,然后枚举变为0的边计算每条航线的权值,时

2017-02-20 18:34:43 441

原创 【SPOJ 375】Query on a tree&树链剖分详解

SPOJ 375题意给你一棵树每条边的权值,有两种操作:修改某一条边的权值;询问两点之间的路径和。(多组数据)样例输入13 1 2 1 2 3 2 QUERY 1 2 CHANGE 1 3 QUERY 1 2 DONE样例输出1 3树链剖分详解树链剖分是一种把树上询问转换为链状询问的方法,也就是说只要是单链能做树上也能做,并且只会加一个很小的常数。所以一般如果部分分是单链的话,后面的点

2017-02-19 16:52:24 784

原创 【BZOJ 3224】普通平衡树-Splay

之前用SBT做过一次,splay的操作都快忘记了所以拿这道题练练手。 splay支持的操作和SBT一样,只不过多出了一个splay操作,所以写法上会有一些不同,并且splay相比SBT更加能够应付极端数据。基本操作定义结构体这次用了压缩的写法,tme用来存当前节点出现的次数,size用来存当前子树的大小。话说这两个东西是可以互相转化的但是为了后面方便(个屁)所以这么写。struct TREE{

2017-02-13 21:22:29 400

原创 【BZOJ 3224】普通平衡树

BZOJ 3224题意有n个操作,一共有6种。 编号 操作 含义 1 insert(x) 插入一个数x 2 remove(x) 删去一个数x,多个删去一个 3 rank(x) 求出x的排名,多个取最小的 4 kth(x) 求第k小的数 5 pred(x) 小于x中最大的数 6 succ(x) 大于x中最小的数样例输入

2017-02-09 14:10:06 414

原创 【BZOJ 3110】【ZJOI 2013】K大数查询

BZOJ 3110 / ZJOI 2013题意有n个位置和m个操作,操作分两种: 输入1 a b c:在a到b的所有位置加入一个数c; 输入2 a b c:询问a到b每个位置上所有的数中的第c大数。 注意每个位置可以有多个数。样例输入2 5 1 1 2 1 1 1 2 2 2 1 1 2 2 1 1 1 2 1 2 3样例输出1 2 1SOL首先是离散化,注意本题原始数据并没有负

2017-02-06 20:46:02 339

原创 【ZOJ 2112】Dynamic Rankings

ZOJ 2112题意给你n个数,有q次操作,每次操作可以修改某一个数,或是求区间第k小值。(多组数据)样例输入2 5 3 3 2 1 4 7 Q 1 4 3 C 2 6 Q 2 5 3 5 3 3 2 1 4 7 Q 1 4 3 C 2 6 Q 2 5 3样例输出3 6 3 6SOL如果不考虑单点修改就是主席树裸题。主席树本质上使用前缀和维护的,查询复杂度为O(1),但修改

2017-02-05 20:55:20 332

原创 【POJ 2104】K-th Number&主席树详解

POJ 2104题意给定1到n的排列,每次询问某一区间内的第k大值。样例输入7 3 1 5 2 6 3 7 4 2 5 3 4 4 1 1 7 3样例输出5 6 3主席树介绍可持久化线段树,函数式线段树。 有点抽象,能够理解但还不是很熟练,代码不长,但是非常简练,有很多技巧,目前当做黑箱。 可持久化:每次操作尽量用新节点表示而不是修改原节点,这样就能保留所有历史信息。 函数式

2017-02-05 12:22:05 542

原创 【POJ 3667】Hotel

POJ 3667题意有n个房间和k个操作,最开始全部为空。操作1:输入一个数d,找出连续d个空房间,输出起点房间编号。若有多个输出最小的,如果不存在输出0。操作2:输入两个数x和d,清空从x开始的d个房间。样例输入10 6 1 3 1 3 1 3 1 3 2 5 5 1 6样例输出1 4 7 0 5sol用线段树维护,每个节点存储三个值msum,lsum,rsum。msum表示当

2017-02-05 12:21:02 334

原创 【POJ 2528】Mayor's posters

POJ2528题意给定n张海报,每张海报的范围从a[i]到b[i],依次覆盖,后添加的海报会覆盖掉原来位置的海报,求最后能够看到几张海报。多组数据。样例输入1 5 1 4 2 6 8 10 3 4 7 10样例输出4sol首先离散化,然后用线段树维护。注意题目里的起点和终点是线段,但是线段树的操作是点,所以离散的时候要加入一些数。举个例子来解释一下: [1,5]和[6,10]将[1,

2017-02-05 12:19:47 275

空空如也

空空如也

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

TA关注的人

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