bzoj3332】的更多相关文章

题解: 首先只有存在的路有可能有值 然后在存储矩阵的同时对于本来就有边的情况直接存下来这条边的值 然后跑一次最大生成树 在最大生成树的同时就可以求出矩阵的信息. 代码: #include<bits/stdc++.h> #define clr(x) memset(x,0,sizeof(x)) using namespace std; ; int t,n,m,sta,fin,mapy[N][N],mapy2[N][N],fa[N],son[N][N],cnt,ans; struct node {…
这题就是最大生成树. 把两个点之间的期望建边排序. 把相同的期望一起做,那么在这个做之前,这些有着相同期望的点两两肯定不连,否则就输出No了. 相同的做完之后,再次for一遍check一下有没有两两之间还是不能连的,有那么输出No. 其他的就是直接并查集. #include<cstdio> #include<iostream> #include<cstring> #include<cstdlib> #include<algorithm> #inc…