可以说是线段树合并的裸题吧 题意就是给你两个操作 一个操作是合并两个集合,这两个集合都是用权值线段树维护的,便于查询第k小元素 另一个操作就是查询区间极值了 #include<cstdio> ; int n,m,sz; int v[maxn],id[maxn],fa[maxn],root[maxn]; ],rch[],sum[]; inline int read() { ,f=;char ch=getchar(); ;ch=getchar();} +ch-';ch=getchar();} re…