题目大意:给你n个点,问这n个点构成的最小标准差生成树的值

这题题解里面写的都是什么代码??

你用O(n^4)的复杂度,枚举出两条边,然后求平均数。

对于剩下的边,我们求出这些边与平均数的差,然后求最下差生成树。

然后就过了???

不是很懂

 #include<bits/stdc++.h>
#define M 22
#define sqr(x) ((x)*(x))
using namespace std; double x[M]={},y[M]={},dis[M][M]={}; int n; int m=; struct edge{
int u,v; double w;
friend bool operator <(edge a,edge b){return a.w<b.w;}
}a[M*M]; bool sel[M*M]={}; int f[M]={}; int get(int x){return x==f[x]?x:f[x]=get(f[x]);} map<double,int> mp; double solve(double avg){
if(mp[avg]) return ; mp[avg]=;
memset(sel,,sizeof(sel));
for(int i=;i<=n;i++) f[i]=i;
m=;
for(int i=;i<=n;i++)
for(int j=i+;j<=n;j++)
a[++m]={i,j,sqr(dis[i][j]-avg)};
sort(a+,a+m+);
double sum=;
for(int i=;i<=m;i++){
int U=get(a[i].u),V=get(a[i].v);
if(U==V) continue;
sel[i]=;
f[U]=V;
}
for(int i=;i<=m;i++) if(sel[i]){
sum+=dis[a[i].u][a[i].v];
}
avg=sum/(n-); sum=;
for(int i=;i<=m;i++) if(sel[i]){
sum+=sqr(avg-dis[a[i].u][a[i].v]);
}
return sum;
} int Main(){
scanf("%d",&n);
for(int i=;i<=n;i++) scanf("%lf",x+i);
for(int j=;j<=n;j++) scanf("%lf",y+j);
for(int i=;i<=n;i++)
for(int j=;j<=n;j++)
dis[i][j]=sqrt(sqr(x[i]-x[j])+sqr(y[i]-y[j])); double minn=;
for(int i1=;i1<=n;i1++)
for(int j1=;j1<=n;j1++) if(i1!=j1){
double dis1=dis[i1][j1];
for(int i2=;i2<=n;i2++)
for(int j2=;j2<=n;j2++) if(i2!=j2){
double dis2=dis[i2][j2];
minn=min(minn,solve((dis1+dis2)/));
}
}
printf("%.3lf\n",sqrt(minn/(n-)));
}
int main(){
int cas; cin>>cas;
while(cas--) Main();
}

【xsy1303】生成树 乱搞的更多相关文章

  1. 「10.14」小P的2048(模拟)·小P的单调数列(性质,DP)·小P的生成树(乱搞)

    A. 小P的2048 模拟.....又没啥可说的,以后要认真打打模拟题了... B. 小P的单调数列 考场$n^2log(n)$的SB思路有人听吗 正解当然不是这样, 事实上我们每次选取的只有一段区间 ...

  2. 2016 10 28考试 dp 乱搞 树状数组

    2016 10 28 考试 时间 7:50 AM to 11:15 AM 下载链接: 试题 考试包 这次考试对自己的表现非常不满意!! T1看出来是dp题目,但是在考试过程中并没有推出转移方程,考虑了 ...

  3. URAL 1827 Indigenous Wars(排序、乱搞)

    题意:给一个长度为n数组{a[i]}.有m个操作Ti,Si,Li表示找以Ti值结束,以Si值开始,长度为Li的连续子串.找到后,将区间的答案值设为1.一开始答案值全部为0.最后输出n个答案值. 好久没 ...

  4. UVA 11853 [dfs乱搞]

    /* 大连热身E题 不要低头,不要放弃,不要气馁,不要慌张 题意: 在1000×1000的格子内有很多个炮弹中心,半径给定. 为某人能否从西部边界出发,从东部边界走出. 不能输出不能,能的话输出最北边 ...

  5. Codeforces 732e [贪心][stl乱搞]

    /* 不要低头,不要放弃,不要气馁,不要慌张 题意: 给n个插座,m个电脑.每个插座都有一个电压,每个电脑都有需求电压. 每个插座可以接若干变压器,每个变压器可以使得电压变为x/2上取整. 有无限个变 ...

  6. 【BZOJ-4692】Beautiful Spacing 二分答案 + 乱搞(DP?)

    4692: Beautiful Spacing Time Limit: 15 Sec  Memory Limit: 128 MBSubmit: 46  Solved: 21[Submit][Statu ...

  7. 【BZOJ-3578】GTY的人类基因组计划2 set + map + Hash 乱搞

    3578: GTY的人类基因组计划2 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 367  Solved: 159[Submit][Status][ ...

  8. 【BZOJ-2937】建造酿酒厂 前缀和 + 展环为链 + 乱搞

    2937: [Poi2000]建造酿酒厂 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 70  Solved: 24[Submit][Status][D ...

  9. SCOI 2013 密码 & 乱搞

    题意: Fish 是一条生活在海里的鱼.有一天他很无聊,就到处去寻宝.他找到了位于海底深处的宫殿,但是一扇带有密码锁的大门却阻止了他的前进.通过翻阅古籍,Fish 得知了这个密码的相关信息:1. 该密 ...

随机推荐

  1. java实现两个不同list对象合并后并排序

    工作上遇到一个要求两个不同list对象合并后并排序1.问题描述从数据库中查询两张表的当天数据,并对这两张表的数据,进行合并,然后根据时间排序.2.思路从数据库中查询到的数据放到各自list中,先遍历两 ...

  2. easyui datagrid自定义按钮列,即最后面的操作列

    在很多时候我们要在表格的最后添加一列操作列,easyUI貌似没有提供种功能,不过没关系,我们可以自定义来实现首先是HTML部分 <table id="tt" class=&q ...

  3. Gson的入门使用

    Java对象和Json之间的互转,一般用的比较多的两个类库是Jackson和Gson,下面记录一下Gson的学习使用. 基础概念:  Serialization:序列化,使Java对象到Json字符串 ...

  4. springboot整合dubbox与zookeeper

    springboot中dubbo依赖的引入和配置(application.properties)参见:https://blog.csdn.net/wohaqiyi/article/details/72 ...

  5. gdbserver

    这里写下gdbserver的用法: 两台机子,宿主机A和目标机B. step1: 我们在B上安装gdbserver,在A上编译可执行程序a.out,把a.out拷贝到B上面去. step2: 在A上打 ...

  6. 配置MQTT服务器

    第一步:下载一个Xshell 链接:https://pan.baidu.com/s/16oDa5aPw3G6RIQSwaV8vqw 提取码:zsb4 打开Xshell 前往MQTT服务器软件下载地址: ...

  7. 287. Find the Duplicate Number 找出数组中的重复数字

    [抄题]: Given an array nums containing n + 1 integers where each integer is between 1 and n (inclusive ...

  8. 384. Shuffle an Array数组洗牌

    [抄题]: Shuffle a set of numbers without duplicates. Example: // Init an array with set 1, 2, and 3. i ...

  9. 机器学习(二)--------单变量线性回归(Linear Regression with One Variable)

    面积与房价 训练集 (Training Set) Size       Price 2104       460 852         178 ...... m代表训练集中实例的数量x代表输入变量 ...

  10. Idea创建简单Java Web项目并部署Servlet

    1.打开Idea,创建JAVA Web项目 在WEB-INF目录下创建classes和lib文件夹 配置编译输出路径为刚才新建的classes文件夹 配置依赖jar包加载路径 添加tomcat ser ...