
最小生成树
lemondinosaur
转圈圈 不停转圈圈 然后摔倒
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2019.11.09【NOIP提高组】模拟 B 组
解题报告JZOJ 1402 偷懒的小X题目分析代码JZOJ 1403 渡河代码(开O2AC的SPFA)JZOJ 1404 菱形内的计数题目分析代码JZOJ 1405 电缆建设题目分析代码 JZOJ 1402 偷懒的小X 题目 把一组数据按一定顺序依次插入数组中(即第iii个数为a[i]a[i]a[i]),最后得出来就已经是一个堆,即不需要任何交换操作,若有多种方法,输出字典序最大的一组。满足n=2...原创 2019-11-09 15:21:19 · 424 阅读 · 0 评论 -
2019.01.19【NOIP提高组】模拟 A 组
生于忧患死于安乐JZOJ 2941 贿赂分析JZOJ 3771 小Z的烦恼题目分析后续 JZOJ 2941 贿赂 分析 枚举k颗糖怎么分,再求概率期望 JZOJ 2940 生成输入数据 高仿CH 6201 JZOJ 3771 小Z的烦恼 题目 有nnn个球,mmm个盒子,若iii号球在第kkk个盒子里,那么2i2i2i号球必须在第k+1k+1k+1个盒子里,问第一个盒子最多能有多少个球 ...原创 2019-01-19 21:55:31 · 202 阅读 · 0 评论 -
#kruskal,并查集#jzoj 1255 洛谷 2323 公路修建问题
题目 求一个无向图的最小生成树,且最小生成树上的边至少有k条是1级公路(保证单条公路费用一级≥\geq≥二级) 分析 kruskal先按一级最小后二级最大排序,求出前kkk条1级公路,再按二级最小排序求出n−1−kn-1-kn−1−k条公路 代码 #include <cstdio> #include <cctype> #include <algorithm>...原创 2018-11-15 16:16:14 · 172 阅读 · 0 评论 -
#最小生成树#poj 1639 Picnic Planning
题目 一个n个点m条边的无向图,求它的最小生成树,且满足1号节点的度数不超过给定的整数 分析 那么把这个最小生成树拆开,分成了许多连通块,在这些连通块中找到子最小生成树,然后再深搜尝试用其它点连向一号节点 代码 #include &lt;iostream&gt; #include &lt;map&gt; #include &lt;vector&gt; #include &l原创 2018-12-07 21:37:36 · 280 阅读 · 0 评论 -
#最短路径,最小生成树#CH 6202 黑暗城堡
题目 求边都在从1开始的最短路径上的最小生成树的个数 分析 那么也就是说,首先先跑一遍最短路,用乘法原理求出答案 代码 #include <cstdio> #include <cctype> #include <cstring> #include <algorithm> #define rr register using namespace st...原创 2018-12-07 20:14:28 · 368 阅读 · 0 评论 -
2018_9_22 模拟赛
今日比赛目录前言:JZOJ 5771 遨游题目分析代码JZOJ 5772 今天你AK了吗?题目分析代码JZOJ 5773 简单数学题题目分析代码 前言: 渐入佳境233 JZOJ 5771 遨游 题目 一个双向图,找出一对数[L,R],L≤R[L,R],L\leq R[L,R],L≤R,使双向图从起点到终点的边权在该区间范围内,且使LLL尽量大,RRR尽量小 分析 可以发现这是一道有关最大和最...原创 2018-09-22 15:55:48 · 545 阅读 · 0 评论 -
2018_10_17 模拟赛
解题报告前言洛谷 2700 逐个击破题目分析代码JZOJ 2937 监听还原分析代码JZOJ 2938 分割田地分析代码后续 前言 再创悲剧系列 洛谷 2700 逐个击破 题目 给出一个nnn个点的树,问使其中的kkk个点(给定)各自不连通需要删除的边的最小代价 分析 然而这道题说实话还是比较好理解的,用kruskal,没错,只是思想,那么需要用到并查集,那问题是具体过程,那么可以把边权从大到...原创 2018-10-19 20:58:42 · 179 阅读 · 0 评论 -
2018_5_19 模拟赛
前言 超级迟到的博客 SSL NO.1 面积 题目 求a和b的值,使阴影部分面积最大。 分析 首先看到这个三角形 一看就是直角三角形,短直角边为a/2,斜边为r,那么长直角边可以用勾股定理算出来,乘2后得到长方形的长,算出两个长方形再减去中间的部分求a,b最大值,所以枚举a,b 1至2*r-1即可。 #include <cstdio> #inc...原创 2018-06-03 11:21:30 · 249 阅读 · 0 评论 -
2018.12.30【NOIP提高组】模拟A组
前言 去上海了,所以没有比赛,不过还是看了题目 JZOJ 5353 村通网 题目 一座建筑有网,当且仅当满足以下至少一个条件: 1、直接连网,花费为AAA。 2、连接有网的建筑,花费为BBB×两者曼哈顿距离。 有NNN座建筑,知道所有建筑的坐标,问最少要多少费用才能达到目的。 分析 那么这道题就是一道比较裸的最小生成树,由于任意点间都能连边,所以说kruskal没有什么大优势,在此用的是裸的p...原创 2019-01-05 14:40:47 · 198 阅读 · 0 评论 -
2018.12.08【NOIP提高组】模拟B组
迟到的解题报告JZOJ 5123 diyiti分析代码JZOJ 100042 保留道路代码 JZOJ 5123 diyiti bzoj 4927 链接 分析 6根木棍,只能是3+1+1+1或者是2+2+1+1,所以分类讨论。(以下其它情况都排除了之前的情况,也就是容斥,为了行文方便,在此不多写) 设边长为xxx(i×2i\times2i×2代表i和ii和ii和i) 2+2+1+1的组合方式...原创 2018-12-13 18:27:05 · 554 阅读 · 0 评论 -
2019.07.11【NOIP提高组】模拟 A 组
JZOJ 3326 矮人排队 题目 交换两个位置上的数,或者查询权值区间[l∼r][l\sim r][l∼r]是否连续 分析 用权值线段树,维护区间最大值和区间最小值的位置,判断是否连续 代码 #include <cstdio> #include <cctype> #include <cstring> #define rr register #define ...原创 2019-07-11 21:53:19 · 156 阅读 · 0 评论 -
2019.08.23【NOIP提高组】模拟 A 组
解题报告洛谷 1527 JZOJ 2908 矩阵乘法题目分析代码JZOJ 3410 Tree题目分析代码JZOJ 3682 CF429E Points and Segments题目分析代码 洛谷 1527 JZOJ 2908 矩阵乘法 题目 给定一个矩阵,多组询问子矩阵的第kkk大,不带修改 分析 这是一道整体二分的好题,以矩阵的n2n^2n2为值域,用二维树状数组记录≤mid\leq mid≤...原创 2019-08-23 18:08:40 · 377 阅读 · 0 评论 -
#kruskal,树上倍增,lca#ssl 2267 洛谷 1967 货车运输
题目 每条道路都有限重,一些货车从某个城市到达另一个城市,求最多可载多少的货物。 分析 咋一看,貌似有点难,后来发现不就kruskal(改成最大生成树)吗,然后怎样求两点间的最大载重就用树上倍增。 代码 #include &lt;cstdio&gt; #include &lt;queue&gt; #include &lt;cctype&gt; #原创 2018-06-19 21:33:30 · 249 阅读 · 0 评论 -
2018.01.28【NOIP普及组】模拟赛D组
JZOJ NO.1 【usaco2013 mar】懒惰的奶牛[b] 前缀和求和。 代码如下: #include <cstdio> #include <algorithm> using namespace std; int n,k,g,x; long long ans,t[5000001]; int main(){ freopen("lazy_bro...原创 2018-01-29 07:37:54 · 278 阅读 · 0 评论 -
poj 1861 Network#最小生成树,kruskal#
题目大意 求至少需要多少条电缆,才能连接所有集线器,并且单条电缆的最大长度最小,输出电缆的最大长度,数量,及每条电缆的连接点。 分析 Kruskal,用并查集,并且记录边的两头。 代码 #include &amp;amp;lt;cstdio&amp;amp;gt; #include &amp;amp;lt;cctype&amp;amp;gt; #include &amp;原创 2018-04-11 17:26:54 · 144 阅读 · 0 评论 -
ssl 1764 1682 USACO 3.1 Agri-Net 最短网络 (最小生成树)#prim#
题意:求最小生成树的权值和。 #include &lt;cstdio&gt; #include &lt;cctype&gt; #include &lt;climits&gt; using namespace std; int a[101][101],lowcost[101]; bool v[101]; inline int in(){ char x=getchar(); int原创 2018-01-06 12:00:11 · 308 阅读 · 0 评论 -
(ssl 1615)Frogger#floyd,kruskal,并查集#
好想copy题目 分析:从Freddy到Fiona的路径中,一条路径最大的边的最小值 其实就是变种floyd f[i][j]=min(f[i][j],max(f[i][k],f[k][j]))最大值最小 首先第一波福利(n^3) #include &lt;cstdio&gt; #include &lt;algorithm&gt; #include &lt;cmat原创 2018-01-13 11:04:40 · 244 阅读 · 0 评论 -
(洛谷 3366)【模(mú)板】最小生成树#kruskal,并查集#
事实上这道题还是比较水的 Prim和Kruskal任选一个 我感觉还是Kruskal好一点 (并查集) 首先要排序先 #include &lt;cstdio&gt; #include &lt;algorithm&gt; using namespace std; struct uni{ int u,v,w; }e[200001],t; int n,p=1,m,原创 2018-01-13 08:27:54 · 1335 阅读 · 0 评论 -
(ssl 2348)连接格点#kruskal,并查集#
Description 有一个M行N列的点阵,相邻两点可以相连。一条纵向的连线花费一个单位,一条横向的连线花费两个单位。某些点之间已经有连线了,试问至少还需要花费多少个单位才能使所有的点全部连通。 分析:容我解释测试点 所以,既然求最小生成树,纵向优先。 那怎样连呢。 Kruskal 首先一件重要的事情就是并查集是一维的。 所以(x,y)用(x-1)*n...原创 2018-01-06 14:28:19 · 332 阅读 · 0 评论 -
(ssl 2346)联络员#kruskal,并查集#
Description 随着Tyvj网站的逐步壮大,管理员的数目也越来越多,现在你身为Tyvj管理层的联络员,希望你找到一些通信渠道,使得管理员两两都可以联络(直接或者是间接都可以)。Tyvj是一个公益性的网站,没有过多的利润,所以你要尽可能的使费用少才可以。 目前你已经知道,Tyvj的通信渠道分为两大类,一类是必选通信渠道,无论价格多少,你都需要把所有的都选择上;还有一类是选择性的通信渠道,你...原创 2018-01-06 14:16:13 · 329 阅读 · 0 评论 -
(ssl 1562)局域网#prim#
Description 某个局域网内有n(n&lt;=100)台计算机,由于搭建局域网时工作人员的疏忽,现在局域网内的连接形成了回路,我们知道如果局域网形成回路那么数据将不停的在回路内传输,造成网络卡的现象。因为连接计算机的网线本身不同,所以有一些连线不是很畅通,我们用f(i,j)表示i,j之间连接的畅通程度(f(i,j)&lt;=1000),f(i,j)值越小表示i,j之间连接越通畅,f(...原创 2018-01-06 13:38:55 · 387 阅读 · 0 评论 -
ssl 1612 最优布线问题#prim#
Description 学校有n台计算机,为了方便数据传输,现要将它们用数据线连接起来。两台计算机被连接是指它们之间有数据线连接。由于计算机所处的位置不同,因此不同的两台计算机的连接费用往往是不同的。 当然,如果将任意两台计算机都用数据线连接,费用将是相当庞大的。为了节省费用,我们采用数据的间接传输手段,即一台计算机可以间接的通过若干台计算机(作为中转)来实现与另一台计算机的连接。 现在...原创 2018-01-06 13:23:03 · 400 阅读 · 0 评论 -
#并查集,Kruskal,01背包#
并查集 洛谷 1536 村村通 求还要修多少条路,也就是问集合的数量-1。 #include &lt;cstdio&gt; using namespace std; int f[1001],n,m,x,y; int getf(int u){return (f[u]==u)?u:f[u]=getf(f[u]);} void uni(int x,int y){ int fa=...原创 2018-02-15 22:29:33 · 346 阅读 · 0 评论 -
SSL 1764 1682 洛谷 1546 USACO 3.1 Agri-Net 最短网络#kruskal#
题目 求最小生成树 分析 因为它是对称的,所以只需一半的内存,然后剩下的和Kruskal差不多了。 代码 #include &lt;cstdio&gt; #include &lt;cctype&gt; #include &lt;algorithm&gt; using namespace std; struct node{int x,y,w;}e原创 2018-03-21 16:49:43 · 240 阅读 · 0 评论 -
#kruskal#SSL 1312 2461 洛谷 2502 旅行
题目 选择行使过程中最大速度和最小速度的比尽可能小的路线 分析 运用Kruskal,首先枚举一条边,然后找一个最小生成树。 代码 #include &lt;cstdio&gt; #include &lt;cctype&gt; #include &lt;algorithm&gt; using namespace std; struct node{原创 2018-03-31 14:11:06 · 159 阅读 · 0 评论 -
#最小生成树,prim,kruskal#poj 2560 Freckles 雀斑
题目 求最小生成树 分析 prim &amp; kruskal Kruskal代码 #include &lt;cstdio&gt; #include &lt;cmath&gt; #include &lt;algorithm&gt; using namespace std; struct node{int u,v; double原创 2018-03-23 20:05:39 · 215 阅读 · 0 评论 -
ssl 1618 剑鱼行动#prim#
Description 给出N个点的坐标,对它们建立一个最小生成树,代价就是连接它们的路径的长度,现要求总长度最小。N的值在100以内,坐标值在[-10000,10000].结果保留二位小数 #include &lt;cstdio&gt; #include &lt;climits&gt; #include &lt;cmath&gt; using namespace std; doubl原创 2018-01-06 13:13:49 · 300 阅读 · 0 评论