旅游网站系统设计wordpress图文标题一体布局
news/
2025/10/5 9:39:27/
文章来源:
旅游网站系统设计,wordpress图文标题一体布局,用vuejs做的网站,建筑网片是干什么用的解析
倍增真香
关键性质#xff1a;树上距离一个点最远的点必定是直径两端点其一。 本题限制好#xff0c;要求少动态维护倍增数组暴力维护直径即可。 如果每次合并的是两棵树#xff0c;而不是一棵树加一个点#xff0c;可以先离线下来#xff0c;照样能做。 如果每次强…解析
倍增真香
关键性质树上距离一个点最远的点必定是直径两端点其一。 本题限制好要求少动态维护倍增数组暴力维护直径即可。 如果每次合并的是两棵树而不是一棵树加一个点可以先离线下来照样能做。 如果每次强制在线用LCT算距离即可split出来后splay大小减1。 如果还要支持删边需要维护一个 fxf_xfx 表示 xxx 的splay子树内深度最浅的结点真实子树内深度最大的结点深度。深度均指真实深度 转移 flsx→fxf_{ls_x}\to f_xflsx→fx sizlsxfrsx→fxsiz_{ls_x}f_{rs_x}\to f_xsizlsxfrsx→fx flsxheapx.top()→fxf_{ls_x}heap_x.top()\to f_xflsxheapx.top()→fx 最后一个是用堆维护虚子树内所有的 fsonf_{son}fson然后用最大的堆顶转移。 为了支持 reversereversereverse 操作还需要维护一个 gxg_xgx 表示 xxx 的splay子树内深度最深的结点往上延伸深度最大的结点深度把转移式所有左右儿子互换即可。
代码
#includebits/stdc.h
using namespace std;
#define ll long long
#define ull unsigned long long
#define debug(...) fprintf(stderr,__VA_ARGS__)
#define ok debug(OK\n)
inline ll read(){ll x(0),f(1);char cgetchar();while(!isdigit(c)){if(c-) f-1;cgetchar();}while(isdigit(c)){x(x1)(x3)c-0;cgetchar();}return x*f;
}
const int N1e5100;
const int M2e4100;
const int inf1e9;int n,tot;int pl[N][20],dep[N];
int fa[N],u[N],v[N],d[N];
int find(int x){return fa[x]x?x:fa[x]find(fa[x]);
}
char c;
int x;
inline int Lca(int x,int y){if(dep[x]dep[y]) swap(x,y);for(int k17;k0;k--){if(dep[pl[x][k]]dep[y]) xpl[x][k];}if(xy) return x;for(int k17;k0;k--){if(pl[x][k]pl[y][k]) continue;xpl[x][k];ypl[y][k];}return pl[x][0];
}
inline int dis(int x,int y){int lcaLca(x,y);return dep[x]dep[y]-2*dep[lca];
}
signed main(){#ifndef ONLINE_JUDGE//freopen(a.in,r,stdin);//freopen(a.out,w,stdout);#endifnread();while(n--){scanf( %c%d,c,x);if(cB){int nowtot;if(x-1) x0;pl[now][0]x;for(int k1;pl[now][k-1];k) pl[now][k]pl[pl[now][k-1]][k-1];dep[now]dep[x]1;if(x){int ofind(x),tmp(0);fa[now]o;if((tmpdis(now,u[o]))d[o]){v[o]now;d[o]tmp;}if((tmpdis(now,v[o]))d[o]){u[o]now;d[o]tmp;}}else{fa[now]now;u[now]v[now]now;d[now]0;}}else{int ofind(x);printf(%d\n,max(dis(u[o],x),dis(v[o],x)));}}return 0;
}
/*
10 10
1 8 5
1 6 5
1 7 9
1 4 2
1 3 4
1 4 2
1 6 3
1 4 1
1 7 1
1 8 4
*/
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/928078.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!