Aimee 显然可以证得,如果把所有可以交换的点之间连边,那么他们构成了联通块,对于每一个联通块,你可以让他们成为你想要的任何顺序 那就是找联通块,块内依次排序即可 #include<iostream> #include<cstring> #include<cstdio> #include<queu ...
分类:
Web程序 时间:
2021-06-02 18:13:46
阅读次数:
0
题链 分析 结论:由n个点组成的大小分别为$a_1,a_2,\cdots,a_k$的联通块,再加入$k$条边形成一棵树的方案数为$(\prod a_i)\times n^k-2$ 所以不妨考虑一个节的生成函数: \[ G(x)=\sum_{k\in B}\frac{k}{k!}x^k \] 答案为: ...
分类:
其他好文 时间:
2021-06-02 15:25:56
阅读次数:
0
题目描述 A国共有 n 个城市,每两个城市之间均有一条交通线联通。如今A国遭到 B 国的重创,岌岌可危。B 国国王决定轰炸A国的交通线。 面对危难之时,A国国王决定更换首都。在 B国的轰炸结束之后,A国的领土将会分成若干个联通 块。A国的首都,将会从联通块大小最大的联通块中,随机选择一个城市,作为首 ...
分类:
其他好文 时间:
2020-10-24 10:29:07
阅读次数:
23
开一个很大的将近3000*3000的数组,去作为地图使用。 然后把起点放到一个比较中间的位置,因为Farmer John会向四个方向走。 之后O(n)扫一遍,对于每一个指令去模拟他走的过程。 最重要的是判断交点,以此来确定联通块的个数。 需要注意的问题:一个点可能在不同的方向意义上算作不同的交点。 ...
分类:
其他好文 时间:
2020-08-06 20:43:01
阅读次数:
61
题面 分析 对每个点的贡献进行分析:如果这个点不是割点,那么去掉这个点图仍然联通,减少的访问仅为这个点和其他点之间的联系,也就是$2*(n-1)$。如果这个点是割点,那么去除之后图会变成多个联通块。设第$i$个联通块的大小为$size_i$,易知联通块之间减少的联系是$\Sigma_i\Sigma_ ...
分类:
其他好文 时间:
2020-07-26 00:12:24
阅读次数:
61
先讲下部分分怎么搞。 有个非常暴力的暴力做法: 对于每一个询问,把边权大于 \(w_j\) 的边加入,并查集维护联通块即可。 时间复杂度 \(\mathcal{O(qm)}\),可以过 \(\mathrm{Subtask\ 1}\) 当 \(t_i=2\) 的时候,可以直接 kruskal 重构树, ...
朴素版prim算法(适用于稠密图) 时间复杂度:O(n^2) 类比Dijkstra算法:Dijkstra算法是更新到起始点的距离,Prim是更新到集合S的距离 S:当前已经在联通块中的所有点的集合 dist[i] = inf for n 次 t<-S外离S最近的点 st[t] = true 利用t更 ...
HDU6311 Cover 题意: 给出$N$个点的简单无向图,不一定联通,现在要用最少的路径去覆盖所有边,并且每条边只被覆盖一次,问最少路径覆盖数和各条路径 \(N\le 10^5\) 题解: 对于每个连通块分别处理 考虑每个联通块,必然是用最少的欧拉路径去覆盖,首先考虑连通块里没有奇数度数的点的 ...
分类:
其他好文 时间:
2020-06-24 21:59:34
阅读次数:
51
有关规定: 一.Gomory-Hu树 定义一棵树 \(T=(V,E_T)\) 为最小割树,当且仅当 \(δ(W)\) 是某个 \(α(s,t)\),\(W\) 是 \(T\) 删去边 \((s,t)\) 后其中一个联通块 实现: 这个做法的主要问题在于为什么边 \((r',r'')\) 是合法的 首 ...
分类:
其他好文 时间:
2020-06-24 21:24:52
阅读次数:
70
感谢sinian阿姨的热心指导 Description 这篇好久前写的,现在只是转过来,忘了 Solution 假设 $a \leq b$最小生成树上$a$边尽量要多,若a边不够将全图联通才用$b$边所以可以用$a$边将图连成多个联通块,再用$b$边将全图联通路径只要求在最小生成树上,且到不同点的最 ...
分类:
其他好文 时间:
2020-06-14 14:25:53
阅读次数:
65