#include<cstdio>
#include<algorithm>
#include<cmath>
using namespace std;
const int maxn=55;
struct point
{
int x,y;
}pnt[maxn];
struct edge
{
int s,e;
double len;
bool operator < (edge e) const
{
return len < e.len;
}
}e[maxn*maxn];
int father[maxn];
double getlen(point a,point b)
{
return sqrt( (a.x-b.x)*(a.x-b.x) + (a.y-b.y)*(a.y-b.y) );
}
int find(int x)
{
if(father[x]==x)
{
return x;
}
return find(father[x]);
}
int main()
{
int n;
while(~scanf("%d",&n),n)
{
int i,j,p,q;
scanf("%d%d",&p,&q);
int ne=0;
for(i=1;i<=n;i++)
{
scanf("%d%d",&pnt[i].x,&pnt[i].y);
for(j=1;j<i;j++)
{
e[ne].s=i;
e[ne].e=j;
e[ne++].len=getlen(pnt[i],pnt[j]);
}
}
sort(e,e+ne);
for(i=1;i<=n;i++)
{
father[i]=i;
}
double ans=getlen(pnt[p],pnt[q]);
father[p]=q;
int u,v;
for(i=0;i<ne;i++)
{
u=find(e[i].s);
v=find(e[i].e);
if(u!=v)
{
ans += e[i].len;
father[u] = v;
}
}
printf("%.2lf\n",ans);
}
return 0;
}
相关推荐
Python 高级语法:闭包
闭包(Closure)是函数式编程中的一个重要概念。在Python中,闭包可以简单理解为:一种特殊的函数。外函数:嵌套函数中最外层的函数称之为外函数。内函数:嵌套函数中最内层的函数称之为内函数;内函数引用了外函数的临时变量;外函数的返回使用了临时变量的内函数。
HDU-4463-Outlets
HDU-4463-Outlets http://acm.hdu.edu.cn/showproblem.php?pid=4463 已知两点相连,求最小生成树,第一次参加现场赛,各种悲剧。。。这题我敲的,调试了半天才过。。。菜鸟伤不起哇。。。 #include #include #include #include #define N 100 struct node { int x; int
强化学习经典算法笔记(九):LSTM加持的PolicyGradient算法
强化学习经典算法笔记(九):LSTM加持的PolicyGradient算法 在上文《强化学习经典算法笔记(八):LSTM加持的A2C算法解决POMDP问题》的基础上,实现了LSTM+MLP的Policy Gradient算法。 实现过程如下: import argparse, math, os, sys import numpy as np import gym from gym import wrappers import matplotlib.pyplot as plt import torch fr
HDU1301 Outlets 解题报告--prim
Outlets Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1053 Accepted Submission(s): 475 Problem Description In China, foreign brand
ollama服务暴露公网?三步搞定Nginx反向代理配置(避坑指南)
本文详细介绍了如何通过Nginx反向代理安全地将Ollama服务暴露到公网,避免直接修改OLLAMA_HOST带来的安全隐患。文章提供了从SSL证书部署到高级安全加固的全流程实战指南,包括IP白名单、基础认证、速率限制等企业级安全措施,帮助用户实现安全可靠的外部访问。
计算机网络实验六 RIP 配置实验
Man! What can I say?
hdu 4463(最小生成树变形)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4463思路:由于nike与apple必须有直接的边相连,因此可以先把这条边选进去,然后就是Kruskal求最小生成树了,由于一开始已经把点nike和点apple合并了,因此kruskal选择边的时候就不会选进去了。 1 #include<iostream> 2 #includ...
【遥感数字图像处理(朱文泉)】第四章 变换域处理方法
变换域的处理方法
hdu 4463 Outlets 最小生成树
。。。
深入解析MOSFET结电容与分布参数:Cgd、Cgs、Cds与Ciss、Crss、Coss的关系与应用
本文深入解析了MOSFET结电容Cgd、Cgs、Cds及其等效参数Ciss、Crss、Coss对开关性能的影响。文章详细阐述了米勒电容Cgd如何导致开关损耗与振荡,并提供了基于电容参数的高频电路选型、驱动设计及PCB布局优化等实战指南,帮助工程师解决开关电源与电机驱动中的常见问题。
如何将一个向量投影到一个平面上_线性代数19——投影矩阵和最小二乘
一维空间的投影矩阵 先来看一维空间内向量的投影: 向量p是b在a上的投影,也称为b在a上的分量,可以用b乘以a方向的单位向量来计算,现在,我们打算尝试用更“贴近”线性代数的方式表达。 因为p趴在a上,所以p实际上是a的一个子空间,可以将它看作a放缩x倍,因此向量p可以用p = xa来表示,只要找出x就可以了。因为a⊥e,所以二者的点积为0: 我们希望化简这个式子从而得出x: x是一个实数...
hdu4463-Outlets
http://acm.hdu.edu.cn/showproblem.php?pid=4463 // File Name: hdu4463.cpp // Author: bo_jwolf // Created Time: Thursday, May 09, 2013 PM01:06:34 HKT #include #include #include #include #include #
Spine骨骼动画查看器 - Skeleton Viewer
骨骼动画是现代游戏和动画制作中常用的技术之一。Spine骨骼动画查看器(Skeleton Viewer)是一个官方提供的工具,用于查看和调试Spine骨骼动画。本文将介绍Skeleton Viewer的功能和使用方法,并提供相应的源代码示例。通过Skeleton Viewer,开发者可以直观地查看和调试Spine骨骼动画,包括骨骼结构、动画播放和事件触发等。这有助于提高骨骼动画的质量和效果,并加速开发过程。以上代码演示了如何使用Skeleton Viewer查看和播放Spine骨骼动画。
HDU 4463 Outlets(最小生成树)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4463 题意:要在n个商店之间修路,商店p和q必须直接通过一条马路相连,所有商店之间必须能通过马路联系,求修建马路的最小长度。 分析:其实就是简单的求最小生成树问题,不过加了一个限制条件那就是点p q必须连接在一起,可在用并查集求最小生成树之前先将pq合并到一个子集中,然后在按部就班的求即可,最
SAP B1中文培訓教材_SDK
公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说
华为的C语言编程规范.pdf
华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。
HDU 4463--最小生成树+并查集标记
题意: 有n家店,要你把他们连在一起(即建成一颗最小生成树),耐克和苹果是要求必须有边直接连的,然后就给你n个店的坐标。输出你建好的生成树的权值。 输入: 4 2 3 0 0 1 0 0 -1 1 -1 0 输出: 3.41 分析: 最小生成树,首先将各个商店连接起来,将边进行排序,找出最小的边的权值,为了排序我们建立一个结构体,用来储存坐标,和边权
计算机控制技术及应用
《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。
最小生成树 - kruskal 小讲 【 理解 + 例题 】
最近学不进新的东西,只能看看以前的了,
复分析 阿尔福斯(Ahlfors) 第三版答案 英文
答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案
hdu 4460 && hdu 4461 && hdu 4463
hdu 4463 Outlets 裸的最小生成树 ,只是有一条边是必须出现在树中,直接一开始把他们连在一起就行了。 hdu 4461 The Power of Xiangqi 签到的,每个字母有自己的能量,但如果没有同时拥有B和C且总能量本来就>1,那总能量-1,求红和黑谁的能量多 hdu 4460
hdu 4463 Outlets(最小生成树)
题目链接:hdu 4463 Outlets 题目大意:给定N个点,以及P,Q,问说建立N-1条边联通N个点的最短长度,要求P,Q必须建立边。 解题思路:最小生成树水题。 #include #include #include #include #include using namespace std; const int maxn = 55; struct edge {
最小生成树——hdu 4463
杭电hdu4463 最小生成树
hdu4463 Outlets 最小生成树
不超过50个点,先给两个点s1,s2表示这两个点必须先连起来,接下来给出n个点的坐标,在先连接s1,s2的前提下求最小生成树。 N不到50..普利姆,克鲁斯卡尔随便都能搞吧..虽说完全图理论上普利姆快一点- -... #include #include #include #include #include #include #include #include #inclu
hdu 4463 Outlets
hdu 4463 Outlets Online Judge Online Exercise Online Teaching Online Contests Exercise Author F.A.Q Hand In Hand Online Acmers Forum | Discuss Statistical Charts Problem Archive Realtime Judge Status Authors Ranklist C/C++/Java Exams ACM
HDU 4463 Outlets (最小生成树kruskal算法)
Outlets Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Description In China, foreign brand commodities are often much more expensive than abroad. The main ...
hdu 4463 Outlets(最小生成树,kruskal,前向星)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=4463 最小生成树的应用,但是要先把其中两个点连接起来,然后选取剩余的n-2条边。为了和纯粹的kruskal算法尽量相似,我在结构体上多下了功夫,可能看起来有点复杂。 #include #include #include #include #include #include using names
hdu4463
/* 分析: 2012亚洲杭州站K题。 水题。。。 2012-11-08 */ #include"stdio.h" #include"string.h" #include"stdlib.h" #include"math.h" int pre[100]; struct
HDU4463Outlets(最小生成树)
HDU4463Outlets(最小生成树) HDU4463Outlets 题目大意: 需要新建一个mall,里面有很多的商店,希望修最短的路,使得里面的店联通,可以通过别的店间接的联通,但是有规定两家店一定要直接的联通。求在这样的条件下的最短的路径。 解题思路: 最小生成树,只是前提是先要使得要求的两个结点先联通。 代码: #include #inclu
2354



被折叠的 条评论
为什么被折叠?



