bzoj3680吊打GTY
题意:http://www.lydsy.com/JudgeOnline/problem.php?id=3680
sol :吊打出题人(逃~
puts("nan")
出题人题解:http://bakser.blog.163.com/blog/static/23589413220147161124294/
数学&物理结合QAQ,喜sang闻xin乐bing见kuang
引入一下广义费马点:http://www.matrix67.com/blog/archives/422
然后爬山or退火乱搞即可
#include<iostream>
#include<cstdio>
#include<cmath>
#define eps 0.00000001
using namespace std;
const int Mx=;
double x,y,tmp=,ansx,ansy;
struct Node { double x,y; int w; } str[Mx];
double dis(double x,double y,Node z)
{
return sqrt((x-z.x)*(x-z.x)+(y-z.y)*(y-z.y));
}
int main()
{
int n; scanf("%d",&n);
for(int i=;i<=n;i++) scanf("%lf%lf%d",&str[i].x,&str[i].y,&str[i].w);
for(int i=;i<=n;i++)
ansx+=str[i].x*str[i].w,ansy+=str[i].y*str[i].w;
ansx/=n;ansy/=n;
while(tmp>eps)
{
x=y=;
for(int i=;i<=n;i++)
{
x+=(str[i].x-ansx)*str[i].w/dis(ansx,ansy,str[i]);
y+=(str[i].y-ansy)*str[i].w/dis(ansx,ansy,str[i]);
}
ansx+=x*tmp,ansy+=y*tmp;
if(tmp>0.5) tmp*=0.5;
else tmp*=0.97;
}
printf("%.3lf %.3lf\n",ansx,ansy);
return ;
}
bzoj3680吊打GTY的更多相关文章
- [JSOI2004]平衡点/[BZOJ3680]吊打XXX
[JSOI2004]平衡点/[BZOJ3680]吊打XXX 题目大意: 有\(n(n\le10000)\)个重物,每个重物系在一条足够长的绳子上.每条绳子自上而下穿过桌面上的洞,然后系在一起.假设绳子 ...
- BZOJ3680 吊打XXX 【模拟退火】
Description gty又虐了一场比赛,被虐的蒟蒻们决定吊打gty.gty见大势不好机智的分出了n个分身,但还是被人多势众的蒟蒻抓住了.蒟蒻们将n个gty吊在n根绳子上,每根绳子穿过天台的一个洞 ...
- BZOJ3680:吊打XXX(模拟退火)
Description gty又虐了一场比赛,被虐的蒟蒻们决定吊打gty.gty见大势不好机智的分出了n个分身,但还是被人多势众的蒟蒻抓住了.蒟蒻们将 n个gty吊在n根绳子上,每根绳子穿过天台的一个 ...
- [bzoj3680]吊打XXX_模拟退火
吊打XXX bzoj-3680 题目大意:在平面上给定n个点,每个点有一个权值.请在平面上找出一个点(不一定在这n个点内找)使得这个点到n个点的距离*权值最小,即求这n个点的重心. 注释:$1\le ...
- BZOJ3680 : 吊打XXX
本题就是找一个受力平衡的点 我们一开始假设这个点是(0,0) 然后求出它受到的力,将合力正交分解后朝着合力的方向走若干步,并不断缩小步长,一步步逼近答案 #include<cstdio> ...
- bzoj3680: 吊打XXX(模拟退火)
题目要求 最小(dis表示绳结到点i的距离),就是个广义费马点的题,模拟退火裸题QAQ 模拟退火就是优化后的爬山算法,一开始先随机一个平均点,接下来如果随机到的点比当前点劣,温度比较高的话也有几率跳过 ...
- 模拟退火法(吊打XXX)Bzoj3680
3680: 吊打XXX Time Limit: 10 Sec Memory Limit: 128 MBSec Special Judge Submit: 308 Solved: 94 [Subm ...
- [luogu1337][bzoj3680][JSOI2004]平衡点 / 吊打XXX【模拟退火】
题目描述 gty又虐了一场比赛,被虐的蒟蒻们决定吊打gty.gty见大势不好机智的分出了n个分身,但还是被人多势众的蒟蒻抓住了.蒟蒻们将n个gty吊在n根绳子上,每根绳子穿过天台的一个洞.这n根绳子有 ...
- 【BZOJ3680】吊打xxx [模拟退火]
吊打XXX Time Limit: 10 Sec Memory Limit: 128 MB[Submit][Status][Discuss] Description gty又虐了一场比赛,被虐的蒟蒻 ...
随机推荐
- Cesium专栏-测量工具测距、测面、测高(附源码下载)
Cesium Cesium 是一款面向三维地球和地图的,世界级的JavaScript开源产品.它提供了基于JavaScript语言的开发包,方便用户快速搭建一款零插件的虚拟地球Web应用,并在性能,精 ...
- Java如何将十六进制数转换为十进制数的自编程序
package com.swift;//所属包 import java.util.Scanner;//导入扫描器 public class Hex2Decimal { public static vo ...
- java 程序设计第三次作业内容
第一题:输出结果是什么? System.out.println("5+5="+5+5); 第二题:输出结果是什么? int a=3,b; b=a++; sop("a=&q ...
- Oracle数据库学习(二)
2.用SQL进行多表查询 (1)无条件多表查询 笛卡尔集:总记录数=table1记录数×table2记录数 select * from table1, table2 (2)等值连接 内连接:selec ...
- 网络流_Edmond-Karp算法、Dinic算法
转载:网络流基础篇——Edmond-Karp算法 BY纳米黑客 网络流的相关定义: 源点:有n个点,有m条有向边,有一个点很特殊,只出不进,叫做源点. 汇点:另一个点也很特殊, ...
- Http请求 GET和POST,405错误
我就简单说吧,在用SringMVC时,我们通常会用到 @RequestMapping(value="/test",method=RequestMethod.GET) public ...
- 【java】A local class access to local variables
内部类参考 A local class has access to local variables. However, a local class can only access local vari ...
- 用Python学分析 - 单因素方差分析
单因素方差分析(One-Way Analysis of Variance) 判断控制变量是否对观测变量产生了显著影响 分析步骤 1. 建立检验假设 - H0:不同因子水平间的均值无差异 - H1:不同 ...
- 3分钟快速了解FastDFS
1.介绍 FastDFS是一个C语言写的阿里开源的分布式文件存储服务器主要由两部分组成:1.Tracker server ——————主要负责调度和追踪Storage状态(调度服务器),默认监听端口: ...
- Problem I. Count - HDU - 6434(欧拉函数)
题意 给一个\(n\),计算 \[\sum_{i=1}^{n}\sum_{j=1}^{i-1}[gcd(i + j, i - j) = 1]\] 题解 令\(a = i - j\) 要求 \[\sum ...