pku 1673 EXOCENTER OF A TRIANGLE
http://acm.pku.edu.cn/JudgeOnline/problem?id=1673
题意归结到最后就是求三角形的锤心。由三角形的锤心公式可求得:
垂心:
A(x1,y1)B(x2,y2)C(x3,y3),垂心H(x0,y0)
用斜率是负倒数关系Kbc=y3-y2/x3-x2 Kah=y1-y0/x1-x0 Kah=-1/Kbc
得到方程(y3-y2)/(x3-x2)=-(x1-x0)/(y1-y0)
同理可得方程(y2-y1)/(x2-x1)=-(x3-x0)/(y3-y0)
解出x0,y0即可。
#include<iostream>
using namespace std;
struct point
{
double x,y;
};
struct line
{
point a,b;
};
point intersection(line u,line v)
{
point ret = u.a;
double t = ((u.a.x-v.a.x)*(v.a.y-v.b.y) - (u.a.y-v.a.y)*(v.a.x-v.b.x))
/ ((u.a.x-u.b.x)*(v.a.y-v.b.y) - (u.a.y-u.b.y)*(v.a.x-v.b.x));
ret.x += (u.b.x-u.a.x)*t;
ret.y += (u.b.y-u.a.y)*t;
return ret;
}
point perpencenter(point a,point b,point c)
{
line u,v;
u.a = c;
u.b.x = u.a.x-a.y+b.y;
u.b.y = u.a.y+a.x-b.x;
v.a = b;
v.b.x = v.a.x-a.y+c.y;
v.b.y = v.a.y+a.x-c.x;
return intersection(u,v);
}
int main()
{
int cas;
cin >> cas;
while(cas --)
{
point A,B,C;
scanf("%lf",&A.x);scanf("%lf",&A.y);
scanf("%lf",&B.x);scanf("%lf",&B.y);
scanf("%lf",&C.x);scanf("%lf",&C.y);
point ans;
ans = perpencenter(A,B,C);
printf("%0.4lf %0.4lf/n",ans.x,ans.y);
}
return 0;
}
/*
2
0.0 0.0
9.0 12.0
14.0 0.0
3.0 4.0
13.0 19.0
2.0 -10.0
9.0000 3.7500
-48.0400 23.3600
*/
pku 1673 EXOCENTER OF A TRIANGLE相关推荐
- poj pku 1673 EXOCENTER OF A TRIANGLE 三角形 垂心
[b][color=blue]题目描述:[/color][/b][url]http://poj.org/problem?id=1673[/url][size=large][/size] 该题重点是求证 ...
- POJ 1673 EXOCENTER OF A TRIANGLE(证明+求三角形垂心)
POJ 1673 EXOCENTER OF A TRIANGLE(证明+求三角形垂心) http://poj.org/problem?id=1673 题意: ZOJ 1821 有一个三角形ABC,扩展 ...
- POJ 1673 EXOCENTER OF A TRIANGLE(求三角形的垂心)
博客原文地址:http://blog.csdn.net/xuechelingxiao/article/details/40654421 EXOCENTER OF A TRIANGLE 题目大意:一个三 ...
- POJ 1673 EXOCENTER OF A TRIANGLE(解三角形重心)
题目链接:http://poj.org/problem?id=1673 AC代码: #include<cstdio> #include<cmath> #include<a ...
- POJ 1673 EXOCENTER OF A TRIANGLE
这道题就是求点的时候麻烦了点,思路还是很简单的 刚开始把向量反向写成了swap(x,y),其实应该是x=-x,y=-y #include<stdio.h> #include<math ...
- poj1673 EXOCENTER OF A TRIANGLE
地址:http://poj.org/problem?id=1673 题目: EXOCENTER OF A TRIANGLE Time Limit: 1000MS Memory Limit: 100 ...
- POJ1673 EXOCENTER OF A TRIANGLE(三角形垂心)
题目链接: http://poj.org/problem?id=1673 题目描述: EXOCENTER OF A TRIANGLE Description Given a triangle ABC, ...
- ACM计算几何题目推荐
//第一期 计算几何题的特点与做题要领: 1.大部分不会很难,少部分题目思路很巧妙 2.做计算几何题目,模板很重要,模板必须高度可靠. 3.要注意代码的组织,因为计算几何的题目很容易上两百行代码,里面 ...
- POJ 计算几何入门题目推荐
其实也谈不上推荐,只是自己做过的题目而已,甚至有的题目尚未AC,让在挣扎中.之所以推荐计算几何题,是因为,本人感觉ACM各种算法中计算几何算是比较实际的算法,在很多领域有着重要的用途(例如本人的专 ...
最新文章
- 数据库索引的作用和优点缺点
- 计算机信息管理和计算机及应用,计算机信息管理及应用浅析
- 外键为主键可以重复原因
- Docker容器的root用户
- Vue2.0 全家桶开发的网页应用(参照吾记APP)
- win10安装iis(亲测,工作需要)
- Python库:random库
- redis 转义字符_阿里巴巴官方最新 Redis 开发规范
- 怎样完整的转换PDF格式文件
- oracle 恢复dmp数据,Oracle数据库使用DMP文件恢复数据
- jquery+cropper剪切、旋转、缩放图片
- 解决Win11快捷键反应慢有延迟
- 天下武功,唯快不破 - O'Reilly Velocity China 2011 PPT汇总
- 二十一世纪大学英语读写基础教程学习笔记(原文)——5 - Shipwrecked in Antarctica(沉船南极洲)
- 【Linux共享内存】
- 分布式与传统的对比简介
- r5处理器_i5-9400F和R5-2600哪个好?R5 2600和i5 9400F性能对比测试评测
- next数组两种求法
- 公司年会文化片主题和方案设计
- 论文阅读笔记《Matching Images With Multiple Descriptors: An Unsupervised Approach for Locally Adaptive》
热门文章
- 2021高考仙桃考生成绩查询,2021年仙桃高考状元名单公布,仙桃文理科状元是谁多少分...
- 从西贝的“不雅视频”看门店升级数字媒体重要性
- 网页 大文件分片上传处理
- 前端图片裁剪cropper.js
- deadbeef_DeaDBeeF播放器下载
- 碎片化学习Java(十一)Java if买手机问题
- 《TCP/IP详解》_卷一_ARP和RARP协议
- C# 接口的实现与继承
- VBoxManage常用命令
- STM32烧录程序方式