HDU 3694计算几何

体素坐标(voxel_coors)在mmdetection3d中的理解 阅读详情
/****************************************************************************************************
    找四边形的Fermat点,对于任意多边形来说找Fermat点的方法就是模拟退火,但是这道题貌似故意卡模拟退火的精度,试了好多次
都没过。。。后来看了白书,原来四边形的Fermat点就是两条对角线的焦点,还有个证明,用的是反证法,挺NX的~接着就码代码A了~
****************************************************************************************************/
#include <iostream>
#include <functional>
#include <algorithm>
//#include <hash_map>		//Visual C++ lib
#include <complex>
#include <cstdlib>
#include <cstring>
#include <fstream>
#include <sstream>
#include <utility>
#include <bitset>
#include <cctype>
#include <cstdio>
#include <limits>
#include <memory>
#include <string>
#include <vector>
#include <cmath>
#include <ctime>
#include <queue>
#include <stack>
#include <list>
#include <map>
#include <set>
using namespace std;

#define LOWBIT(x) ( (x) & ( (x) ^ ( (x) - 1 ) ) )
#define CLR(x, k) memset((x), (k), sizeof(x))
#define CPY(t, s) memcpy((t), (s), sizeof(s))
#define SC(t, s) static_cast<t>(s)
#define LEN(s) static_cast<int>( strlen((s)) )
#define SZ(s) static_cast<int>( (s).size() )

typedef double LF;
//typedef long long LL;		//GNU C++
//typedef unsigned long long ULL;
typedef __int64 LL;		//Visual C++ 2010
typedef unsigned __int64 ULL;

typedef pair<int, int> PII;
typedef pair<LL, LL> PLL;
typedef pair<double, double> PDD;

//typedef hash_map<int, int>::iterator HMI;
typedef map<int, int>::iterator MI;
typedef vector<int>::iterator VI;
typedef list<int>::iterator LI;
typedef set<int>::iterator SI;

template <typename T>
T sqa(const T &x)
{
	return x * x;
}

const int INF_INT = 0x3f3f3f3f;
const LL INF_LL = 0x7fffffffffffffffLL;		//15f
const double oo = 10e9;
const double eps = 10e-9;
const double PI = acos(-1.0);

const int MAXN = 6;

struct Point
{
	LF x, y;
	Point()
	{
		x = y = 0.0;
	}
	Point(const LF &_x, const LF &_y)
	{
		x = _x;
		y = _y;
	}
}pnt[MAXN];
struct Seg
{
	LF a, b, c;
	Seg()
	{
		a = b = c = 0.0;
	}
	Seg(const LF &_a, const LF &_b, const LF &_c)
	{
		a = _a;
		b = _b;
		c = _c;
	}
};
int n;

bool inline equals(const LF &a, const LF &b)
{
	return fabs(a - b) < eps;
}
bool parallel(const Seg &sa, const Seg &sb)
{
	return fabs(sa.a * sb.b - sa.b * sb.a) < eps;
}
LF dist(const Point &pa, const Point &pb)
{
	return sqrt( sqa(pa.x - pb.x) + sqa(pa.y - pb.y) );
}
Seg getseg(const Point &pa, const Point &pb)
{
	Seg sr(pb.y - pa.y, pa.x - pb.x, pa.y * pb.x - pa.x * pb.y);
	return sr;
}
LF get_all_dist(const Point &pk, const int &n)
{
	LF res = 0.0;
	for (int i = 0; i < n; ++i)
	{
		res += dist(pk, pnt[i]);
	}
	return res;
}
Point cross(const Seg &sa, const Seg &sb)
{
	Point pr;
	pr.x = (sb.c * sa.b - sa.c * sb.b) / (sa.a * sb.b - sb.a * sa.b);
	pr.y = (-sa.c - sa.a * pr.x) / sa.b;
	return pr;
}
void ace()
{
	n = 4;
	bool end_sign;
	LF mi;
	Seg sa, sb;
	while (true)
	{
		end_sign = true;
		for (int i = 0; i < n; ++i)
		{
			cin >> pnt[i].x >> pnt[i].y;
			if (!equals(-1.0, pnt[i].x) || !equals(-1.0, pnt[i].y))
			{
				end_sign = false;
			}
		}
		if (end_sign)
		{
			break ;
		}
		mi = oo;
		for (int i = 0; i < n; ++i)
		{
			mi = min(mi, get_all_dist(pnt[i], n));
		}
		sa = getseg(pnt[0], pnt[1]);
		sb = getseg(pnt[2], pnt[3]);
		if (!parallel(sa, sb))
		{
			mi = min(mi, get_all_dist( cross(sa, sb), n ) ) ;
		}
		sa = getseg(pnt[0], pnt[2]);
		sb = getseg(pnt[1], pnt[3]);
		if (!parallel(sa, sb))
		{
			mi = min(mi, get_all_dist( cross(sa, sb), n ) );
		}
		sa = getseg(pnt[0], pnt[3]);
		sb = getseg(pnt[1], pnt[2]);
		if (!parallel(sa, sb))
		{
			mi = min(mi, get_all_dist( cross(sa, sb), n ) );
		}
		printf("%.4lf\n", mi);
	}
	return ;
}
int main()
{
	ace();
	return 0;
}

西门子与汇川伺服脉冲连接(速度模式) 如何使用西门子PLC与汇川伺服进行脉冲连接 阅读详情

相关推荐

FPGA中参数化SPI接口设计与Verilog实现

SPI(串行外设接口)作为嵌入式系统的核心通信协议,通过全双工、高速率特性在FPGA与Flash、ADC等外设交互中占据重要地位。参数化设计通过抽象时钟极性、数据位宽等可配置维度,采用分层架构实现硬件复用,显著提升开发效率。Verilog实现需重点处理跨时钟域同步和可配置帧结构,结合AXI总线集成与UVM验证方法学,可构建适应工业控制、物联网网关等场景的高可靠SPI解决方案。

ciya3282的博客 1408

HDU 3694 Fermat Point in Quadrangle (计算几何- 四边形的费马点)

Fermat Point in Quadrangle Problem Description In geometry the Fermat point of a triangle, also called Torricelli point, is a point such that the total distance from the three vertices...

weixin_30797027的博客 214

已过tiktok校招客户端,面经分享

面试的话, 一天面完3面, 效率很高, 三天之后就发了offer 字节邮件里面也说了不能泄露面试题, 那我就把我秋招参与美团,字节,腾讯,阿里面试被问到的全部问题总结着写出来了, 这其实是我每一轮面试完之后我都会总结哪里答对了, 哪里没有答对, 总结了一大堆问题出来. 答案未必正确, 我只是给自己写了个简单的一句话概括, 可能不够完善, 建议看官自行回答一下这些问题 二本非科班, 暑假在字节实习过, 不过不是tiktok部门, 因此秋招就没啥时间准备面试了, 只投了几个大厂, 顺便也在字节跨部门转正,

a1472750149的博客 1308

hdu 3694 10 福州 现场 E - Fermat Point in Quadrangle 费马点 计算几何 难度:1

In geometry the Fermat point of a triangle, also called Torricelli point, is a point such that the total distance from the three vertices of the triangle to the point is the minimum. It is so name...

weixin_30265171的博客 130

Python 爬虫实战:共享单车数据采集全流程与市场洞察深度剖析

本文介绍了如何利用Python爬虫技术获取和分析共享单车运营数据。文章从项目背景出发,详细阐述了系统架构设计,包括数据抓取、清洗存储、分析和可视化模块。通过Scrapy、BeautifulSoup等工具实现数据采集,使用Pandas进行数据清洗,并借助Matplotlib进行可视化分析。实战部分展示了爬虫代码示例和城市分布、使用频率等分析案例。最终指出数据驱动分析有助于了解行业现状和市场趋势,未来可结合机器学习等方法进行深入洞察。该技术方案为共享单车行业研究提供了有效的数据支持。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 2232

运维系列【仅供参考】:微信版本过低 使用CheatEngine绕过

微信版本过低 使用CheatEngine绕过

weixin_54626591的博客 2135

hdu 3694 Fermat Point in Quadrangle

题目:在四边形中找到一点,到所有顶点的距离和最小。 分析:计算几何、费马点。在三角形中到所有顶点距离和最小的点称之为费马点。             对于三角形:如果是非钝角三角形,则为重心;否则就是钝角的顶点。             对于四边形:如果是凸四边形就是对角线交点;分则就是顶点中的一个。             对于多边形:没有标准的公式,可利用随即贪心方法逼近。 说明:题

小白菜又菜 1227

RHCA ---RH442-4

这题考试中是没有的,但我做ex的判分脚本里做了,主要是lab环境swap只有512M的,这样后续改了某几个参数后会造成内存不够用导致异常.这里记得是双>,如果没自信的小伙伴可以在考试开始后第一时间把/etc/fstab先备份一个或者vi进入后手动敲一下。根据题意我们需要分2个768M的分区给swap。用free看swap大小是2.0Gi即可。留意红框中的内容即可,最后w保存退出。这个时候可以重启下机器。

Q先生 642

HDU 3694Fermat Point in Quadrangle(三分 不过网上大多是费马点的题解)

Fermat Point in Quadrangle Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 1545    Accepted Submission(s): 256 Problem Description

布生气 1851

无源元器件-电容选型参数总结

电容选型时,需要考虑的参数多种多样,这些参数的选择会直接影响到电路的性能、稳定性、成本等多个方面。本文对电阻电容磁珠电感的参数进行详细介绍并总结。

fydar的博客 835

【DEIM创新改进】独家下采样创新改进篇 | ECCV 2026 | DEIM 引入FSD-Down频域-空间动态下采样,在下采样过程中保留小目标的高频信息、助力小目标检测、遥感小目标检测有效涨点

🔥本文提出了一种名为FSD-Down的频域-空间动态下采样模块,用于改进DEIM网络模型在小目标检测中的性能。FSD-Down通过小波分解显式保留低频语义和高频细节,结合分组卷积、动态通道权重和可学习缩放因子,自适应强化目标边缘与纹理特征。该模块能有效减轻传统下采样造成的频率混叠和细节丢失,提升对小目标、密集目标和低对比度目标的检测能力。实验表明,FSD-Down计算开销可控,在保持实时性的同时显著提升检测精度,特别是在VisDrone和AITODv2数据集上对小目标的检测性能提升显著。

Ai缝合怪、助力小伙伴高效发论文 82

HDU 3694 Fermat Point in Quadrangle(四边形的费马点)

Fermat Point in Quadrangle Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 1460    Accepted Submission(s): 241 Problem Description

sunrain的专栏 1343

AUTOSAR从入门到精通-汽车电子电气架构(EEA)

EEA(Electrical/Electronic Architecture),电子电气架构,是首先由德尔福公司提出的,集合汽车的电子电气系统原理设计、中央电器盒的设计、连接器的设计、电子电气分配系统等设计为一体的整车电子电气解决方案的概念。通过EEA的设计,可将动力总成、驱动信息、娱乐信息等车身信息转化为实际的电源分配的物理布局、信号网络、数据网络、诊断、容错、能量管理等的电子电气解决方案。

getusushu的博客 861

acm题单 转侵删

专题1 简单搜索 POJ 1321 POJ 2251 POJ 3278 POJ 3279 POJ 1426 POJ 3126 POJ 3087 POJ 3414 FZU 2150 UVA 11624 POJ 3984 HDU 1241 HDU 1495 HDU 2612 专题2 搜索进阶 HDU 1043 HDU 3567 HDU 2181 HDU 3533 HDU 1560 ZOJ 2477 HDU 3085 HDU 1067 HDU 2102 HDU 3001 专题3 Dancing Links HUS

yoOvQ的博客 383

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

[kuangbin]各种各样的题单

[kuangbin]各种各样的题单 专题1 简单搜索 POJ 1321 POJ 2251 POJ 3278 POJ 3279 POJ 1426 POJ 3126 POJ 3087 POJ 3414 FZU 2150 UVA 11624 POJ 3984 HDU 1241 HDU 1495 HDU 2612 专题2 搜索进阶 HDU 1043 HDU 3567 HDU 2181 HDU 3533 HDU 1560 ZOJ 2477 HDU 3085 HDU 1067 HDU 2102 HDU 3001 专题3

qq_35975367的博客 1056

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

算法专题训练

专题1 简单搜索 POJ 1321 POJ 2251 POJ 3278 POJ 3279 POJ 1426 POJ 3126 POJ 3087 POJ 3414 FZU 2150 UVA 11624 POJ 3984 HDU 1241 HDU 1495 HDU 2612 专题2 搜索进阶 HDU 1043 HDU 3567 HDU 2181 HDU 3533 HDU 1560 ZOJ 2477 H...

Vincehex 817

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

题

简单搜索 POJ 1321 POJ 2251 POJ 3278 POJ 3279 POJ 1426 POJ 3126 POJ 3087 POJ 3414 FZU 2150 UVA 11624 POJ 3984 HDU 1241 HDU 1495 HDU 2612 搜索进阶 HDU 1043 HDU 3567 HDU 2181 HDU 3533 HDU 1560 ZOJ 2477 HDU 3085 ...

chengqidexue的博客 350

刷题记录

想看看自己每天到底干了什么。 17/06/12  NEUQ补题C/D/J  线段树(扫描线基础)HDU - 1542

shinimashzi 476

HDU 4013 图论 树的最小表示

/******************************************************************************* 去年上海赛区热身赛的一道题,树的最小表示模板题。解法就是用二进制枚举所有可能的联通子图,然后 求所有联通子图的最小表示,要注意的是对于某一个联通子图,最小表示需要枚举联通子图里的所有的点,然 后从这些点开始进行dfs,dfs过程中进

源码力量 2521

HDU 4121 模拟

/**************************************************************************************************** 坑爹的模拟题~注意这两种情况:黑方的将能直接飞过去杀了红方的将,还有将走一步能把红方别的子给吃了。。。 ******************************************

源码力量 1773

HDU 3644 计算几何 模拟退火

/* * ===================================================================================== * * Filename: hdu3644.cpp * * Description: Calculate Geometry -- Simulated annealing * *

源码力量 1742

HDU 4049 状态压缩DP

/******************************************************************************* 去年北京赛区网络赛水题,状态压缩DP,一开始TLE,然后发现是没初始化,应该用空间换时间来着, 接着WA,搞了半天没搞明白。。。最后发现发现一个小小的纰漏~~~ 解法就是建立状态dp[M][1 << N],用第一个状态表示

源码力量 1675

HDU 1512 左式堆 + 并查集

/* * ===================================================================================== * * Filename: hdu1512.cpp * * Description: Leftist Heap + Union Find Set * * Version

源码力量 1616

HDU 4036 物理坑爹题

/******************************************************************************* 坑爹的地方比较多,首先所有质量都是没用的,因为无摩擦力;其次坐标最好都用double表示;还有那个 土豆是的坐标是相对于第一个peak的坐标,第四貌似有土豆可以不在peak的范围内。。。以后找min/max值 还是用第一个元素做标记

源码力量 1590

HDU 3656 DLX重复覆盖

/********************************************************************************* 纠结了良久,这个题是DLX的重复覆盖问题,以前还没见过,最后套了晓天大牛的模板,水过了。 还是模板题。。。因为最后的答案必然是某两点的距离,所以离散化一下所有距离后二分再套用DLX 重复覆盖模板就能AC了~赞一下神函数uniq

源码力量 1565

HDU 4123 树状DP+RMQ

/****************************************************************************************************************** 尼玛。。。神题。。。居然能卡RMQ的log2的。。。解法就是先用树状DP预处理整棵树,得到每个节点距离其他节点的最大值, 这个时间复杂度是O(n),然后在得到的

源码力量 1542
上一篇: HDU 3715 2-sat
下一篇: HDU 3065 AC自动机
codeforces_sphinx
博客等级 码龄15年 32粉丝 75原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值