04 2021 档案
摘要://这个代码先算出所有点的距离,然后在求MST中只选用两点距离>=限制值的边。#include<bits/stdc++.h> using namespace std; int ans,n,j=0,c; int g[2501][2501]; int x[2501],y[2501]; struct bo
阅读全文
摘要://https://blog.csdn.net/hwzzyr/article/details/81190442 Kruskal重构树用于解决图中,有关两点间路径最大值最小化或最小值最大化的问题如将 按边权从小到大建立Kruskal重构树,我们就能得到这样的树 首先Kruskal重构树只有2N-1个节
阅读全文
摘要:可持久化并查集 by zkyn个集合 m个操作操作:1 a b 合并a,b所在集合2 k 回到第k次操作之后的状态(查询算作操作)3 a b 询问a,b是否属于同一集合,是则输出1否则输出0 0<n,m<=2*10^4 InputOutputSample Input5 61 1 23 1 22 03
阅读全文
摘要:花神喜欢步行游历各国,顺便虐爆各地竞赛。花神有一条游览路线,它是线型的,也就是说,所有游历国家呈一条线的形状排列,花神对每个国家都有一个喜欢程度(当然花神并不一定喜欢所有国家)。每一次旅行中,花神会选择一条旅游路线,它在那一串国家中是连续的一段,这次旅行带来的开心值是这些国家的喜欢度的总和,当然花神
阅读全文
摘要:https://www.cnblogs.com/y2823774827y/p/11600426.html int parent[maxn],siz[maxn]; //按秩合并用siz,siz小的连向siz大的 vector<pii> tmp; //记录上次合并用到的节点 int find(int p
阅读全文
摘要:给定一棵 n 个节点的树,每个点有一个权值。有 m 个询问,每次给你 u,v,k,你需要回答u xor last 和 v 这两个节点间第 k 小的点权。 其中 last 是上一个询问的答案,定义其初始为 0,即第一个询问的 u 是明文。 输入格式第一行两个整数 n,m 第二行有 n 个整数,其中第
阅读全文
摘要:给一个总元素个数为n(n≤1000000) 的矩阵,矩阵长度为 (r≤20),宽度为 c,矩阵初始值全为整数 0。定义一个子矩阵 (x1,y1),(x2,y2)(包括边界),操作有三种: 将子矩阵的每个元素加上一个值v(v>0)。将子矩阵的每个元素赋值为v(v≥0)。查询子矩阵所有元素的和,最小值,
阅读全文

浙公网安备 33010602011771号