Pre 作为斯坦纳树的第一道题 Solution 以每一个格子建立点,然后直接跑斯坦纳树就可以了。 code cpp include include include include include include define ll long long define xx first define ...
分类:
其他好文 时间:
2019-08-17 10:32:17
阅读次数:
72
8.10总结 得分 60+0+30 T2挂了10分,T3挂了30分 T3没看到要mod!!! T1 正解 类欧 T2 正解 斯坦纳树 对于每一层,赋好初值之后做一次斯坦纳树把那一层的宝藏连起来 然后把这一层的全部宝藏看作一个宝藏给下一层赋初值。 T3 正解 把每一行相连的块压成一个点。 对那些点连边 ...
分类:
其他好文 时间:
2019-08-11 10:42:56
阅读次数:
72
https://cn.vjudge.net/problem/HDU-4085 给你n,m,k ,分别表示有n个点,m条边,每条边有一个权值,表示修复这条边需要的代价 从前k个点中任取一个使其和后k个点中的某一个点,通过边连接,并且必须是一一对应,问最小的代价是多少。 ...
分类:
其他好文 时间:
2019-06-08 00:46:39
阅读次数:
90
"嘟嘟嘟" 都说这题是斯坦纳树的板儿题。 斯坦纳树,我也不知道为啥起这么个名儿,斯坦纳树主要用来解决这样一类问题:带边权无向图上有几个(一般约10个)点是【关键点】,要求选择一些边使这些点在同一个联通块内,同时要求所选的边的边权和最小。(摘自兔哥博客) 但说白了就是一种状压dp。令$dp[i][j] ...
分类:
其他好文 时间:
2019-04-28 15:45:05
阅读次数:
114
"[Luogu4294]" "题解 : 斯坦纳树" $dp[i][j]$ 表示以$i$号节点为根,当前状态为$j$(与$i$连通的点为$1$) 当根$i$不改变时状态转移方程是: $dp[i][j] = \min_{s \in j}\{dp[i][s] + dp[i][\complement_js] ...
分类:
其他好文 时间:
2019-03-23 16:17:15
阅读次数:
149
" 传送门 " Description 该题出现在了D4T1 可以把最后的图分成若干个不相交的部分,显然每个部分都是包含的指定点集合的一个斯坦纳树 枚举子集合并即可 Code c++ / 斯坦纳树;O(n 3^n+kE 2^n) 暂且把O(k E)当成是spfa的复杂度 15:15~16:20 / ...
分类:
其他好文 时间:
2019-03-21 01:09:22
阅读次数:
162
"「JLOI2015」管道连接" 先按照斯坦纳树求一个 然后合并成斯坦纳森林 直接枚举树的集合再dp一下就好了 Code: cpp include include include include using std::min; const int N=1 void read(T &x) { x=0; ...
分类:
其他好文 时间:
2019-02-26 13:50:33
阅读次数:
173
然而就是状压DP。 具体来说,n个点中有k个关键点,选择一些边把它们连通。求最小边权和。 f[i][s]表示点i与s关键点连通时的最小代价,注意i可以不是关键点。 转移有两种,第一种是i不变,s变。枚举s的子集和补集即可。 第二种是s不变,i变。把第一种转移中的所有非INF的i加入队列跑SPFA。每 ...
分类:
其他好文 时间:
2019-02-22 18:20:38
阅读次数:
152
Div1 528 我菜哭了.jpg 这个C的出题人能不能停止出题啊QaQ A ~~这不是裸的斯坦纳树嘛!~~ 然后我就写上了.jpg 然后我没调出来... 然后我发现...这不是傻逼题吗... 直接按照$x$排序,然后做一条恰好够高的线 分别连向两边... 完事了.jpg ...
分类:
其他好文 时间:
2019-02-06 14:36:21
阅读次数:
217
斯坦那树 百度释义 斯坦纳树问题是组合优化问题,与最小生成树相似,是最短网络的一种。最小生成树是在给定的点集和边中寻求最短网络使所有点连通。而最小斯坦纳树允许在给定点外增加额外的点,使生成的最短网络开销最小。 即最小斯坦那树即为并非选择所有的结点,而是选择一部分结点,为保证它们连通,且求解最小开销 ...
分类:
其他好文 时间:
2019-01-28 10:56:53
阅读次数:
211