- 博客(8)
- 收藏
- 关注
原创 树链剖分模板题
P3384 【模板】树链剖分 129通过534提交 题目提供者HansBug标签 难度 省选/NOI- 最新讨论 树剖和表情包有什么微妙的关…后三个点mle。没有动态开点 题目描述 如题,已知一棵包含N个结点的树(连通且无环),每个节点上包含一个数值,需要支持以下操作: 操作1: 格式: 1 x y z 表示将树从x
2017-01-19 21:15:53 421
原创 Bounce(弹走绵羊)lct裸题
Bounce(弹走绵羊) 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系数ki,当绵羊达到第i个装置时,它会往后弹ki步,达到第i+ki个装置,若不存在第i+ki个装置,则绵羊被弹飞。绵羊想知道当它从第i个装置起步时,被弹几次后会被弹飞。为了使得
2017-01-16 15:18:03 431
原创 树链剖分
以下是转的别人的 (后有模板) 这几天学习了一下树链剖分,顺便写一下我的理解、 早上看了一下别人的讲解,云里雾里,终于算是搞懂了、 树链剖分是解决在树上进行插点问线,插线问点等一系列树上的问题 假如现在给你一棵树,然后没两条边之间有一条权值,有一些操作,1:x---y之间的最大权值是多少,2:改变x---y之间的权值 当前这样的操作有很多,如果直接用暴力的方法的
2017-01-15 16:29:24 399
原创 Splay tree
#include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define CL(x,v); memset(x,v,sizeof(x)); #define INF 0x3f3f3f3f #define
2017-01-15 09:41:29 363
原创 Treap
#include #include #include #include using namespace std; struct T{ int l,r,f; int w,z; }a[100000+10]; int root,cnt; void r_rot(int x,int y){ int t=a[y].f; a[y].l=a[x].r; a[a[x].r].f=y; a[x].r=y;
2017-01-13 17:31:58 372
原创 LAZY_TAG
#include #include #include #include using namespace std; const int maxn=100000+10; typedef long long ll; ll a[maxn]; ll tree[maxn<<2]; ll lazy[maxn<<2]; void build(ll h,ll l,ll r){ if(l==r){ tree[h
2017-01-13 15:27:15 520
原创 TPVJ水题
当前位置:/p/1331 P1331 sdlwwlp分饼 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 sdlwwlp要和WD分一张大大大饼,奇怪的是这张饼竟然是树状的(@_@,像风铃一样),每个“节点"都像一张比较小的饼,中间用线穿了起来,形成了一张严格的树状图,现在他们两个为了公平起见,需要切断一条边把这张饼分成大小相似的两份,
2017-01-13 11:58:44 582
原创 lca(倍增)
、#include #include #include #include #include #include using namespace std; const int maxn = 1000000+10; int fa[maxn>>1][20],e,to[maxn],be[maxn],ne[maxn],deep[maxn]; bool p[maxn]; void add(int x,int y
2017-01-13 11:55:35 597
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人