题目描述:http://poj.org/problem?id=1673[size=large][/size]
该题重点是求证点O 为△ABC的垂心
延长BO 交AC 与R, 先证OR⊥AC(其它AO⊥BC, CO⊥AB 同理)
见下图:
1) 绕点B 旋转△EBJ, 使BE 与 BA 重合,得△ABP, 则△EBJ≌△ABP
2) 因为∠ABC 与 ∠EBJ 互余,所以旋转后点P、B、C 共线,且点B 为PC 中点
3) 记AP 中点为Q,则BQ 为中位线,所以∠1 = ∠4
4) 又∠4 为∠3旋转得到,显然∠4 = ∠3,则∠1 = ∠3
5) 显然∠2 与∠3 互余(∠CBJ 为90°), 又∠1 = ∠3,所以∠2 与∠1 互余
所以OR⊥AC
证毕
该题重点是求证点O 为△ABC的垂心
延长BO 交AC 与R, 先证OR⊥AC(其它AO⊥BC, CO⊥AB 同理)
见下图:
1) 绕点B 旋转△EBJ, 使BE 与 BA 重合,得△ABP, 则△EBJ≌△ABP
2) 因为∠ABC 与 ∠EBJ 互余,所以旋转后点P、B、C 共线,且点B 为PC 中点
3) 记AP 中点为Q,则BQ 为中位线,所以∠1 = ∠4
4) 又∠4 为∠3旋转得到,显然∠4 = ∠3,则∠1 = ∠3
5) 显然∠2 与∠3 互余(∠CBJ 为90°), 又∠1 = ∠3,所以∠2 与∠1 互余
所以OR⊥AC
证毕
#include <cstdio> #include <cmath> #define eps 1e-8 struct point { double x, y; }; struct line { point a, b; }; //返回二阶行列式的值 double xmult(double a1, double a2, double b1, double b2) { return a1 * b2 - a2 * b1; } //返回线段的交点, 先确保两直线不共线(平行、重合) //先把直线表示成ax + by + c = 0 的形式 point intersection(line u, line v) { double a1, b1, c1, a2, b2, c2; a1 = u.b.y - u.a.y; b1 = u.a.x - u.b.x; c1 = u.b.x * u.a.y - u.a.x * u.b.y; a2 = v.b.y - v.a.y; b2 = v.a.x - v.b.x; c2 = v.b.x * v.a.y - v.a.x * v.b.y; //注意精度控制, 好像g++ 和 vc 的表现不同。c++(vc)能AC, g++ 就不行了 //不知道为什么, 请高人指点 point ret; ret.x = xmult(b1, b2, c1, c2) / xmult(a1, a2, b1, b2) + eps; ret.y = -1.0 * xmult(a1, a2, c1, c2) / xmult(a1, a2, b1, b2) + eps; return ret; } //返回两点间的距离 double distance(point p1, point p2) { return sqrt((p1.x - p2.x) * (p1.x - p2.x) + (p1.y - p2.y) * (p1.y - p2.y)); } //返回a, b, c 三点组成的三角形的垂心 //前提: a, b, c 三点不共线 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 ncase; point a, b, c, ans; scanf("%d", &ncase); while (ncase--) { scanf("%lf %lf %lf %lf %lf %lf", &a.x, &a.y, &b.x, &b.y, &c.x, &c.y); ans = perpencenter(a, b, c); printf("%.4lf %.4lf\n", ans.x, ans.y); } return 0; }
发表评论
-
ACM 之 Java BigInteger
2011-06-01 20:26 0Java 的大整数类在ACM 中大有用武之地 ... -
判断点是否构成多边形, 顶点连续给出
2011-05-26 14:27 0#include <cstdio> #inc ... -
poj pku 1981 Circle and Points 点与圆 位置关系
2011-05-26 11:29 1305题目描述: http://poj.org/problem?id ... -
poj 1032 Parliament 数学
2011-05-25 17:34 1252题目描述: http://poj.org/problem?i ... -
poj 1385 Lifting the Stone 多边形重心
2011-05-25 11:13 1082题目描述: http://poj.org/problem?i ... -
poj 2676 Sudoku dfs 深搜
2011-05-16 21:05 904题目描述: http://poj.org/problem?i ... -
hdoj 2064 汉诺塔III 递推
2011-05-15 22:29 926题目描述: http://acm.hdu.edu.cn/sh ... -
hdoj 1207 汉诺塔II dp 动态规划
2011-05-15 21:22 1714题目描述: http://acm.hdu.edu.cn/sh ... -
poj 2506 Tiling 递推
2011-05-15 11:18 955题目描述: http://poj.org/problem?i ... -
poj 2420 A Star not a Tree? 多边形 费马点
2011-05-14 18:57 1844题目描述: http://poj.org/problem?i ... -
poj 2954 Triangle Pick 定理
2011-05-14 16:36 1205题目描述: http://poj.org/problem?i ... -
poj 1012 Joseph
2011-05-10 17:42 1281题目描述:poj.org/problem?id=10 ... -
zoj 1081 Points Within 点与多边形关系
2011-05-07 17:51 1185题目描述: http://acm.zju.edu.cn/on ... -
poj 1835 宇航员
2011-05-03 17:00 860题目描述:http://poj.org/problem?id ... -
poj 2398 Toy Storage
2011-04-23 20:19 750题目描述:http://www.poj.org/proble ... -
poj 1654 Area 多边形面积
2011-04-23 20:10 953题目描述:http://poj.org/proble ... -
poj 2318 TOYS 点 直线 位置关系
2011-04-23 10:06 720题目描述:http://poj.org/problem?id= ... -
pc 111303 uva 10195 The Knights Of The Round Table
2011-04-04 16:06 783题目描述:http://www.programming-cha ... -
pc 111302 uva 10180 Rope Crisis in Ropeland!
2011-04-03 20:46 873题目描述: http://www.programming-ch ... -
poj 1971 Parallelogram Counting 平行四边形个数
2011-04-03 10:05 1250题目描述:http://poj.org/problem?id= ...
相关推荐
ACM Poj Pku 解题报告答案 打包 下载 600多题 史上最全 不是网上乱传的200多题,更不是100多题就挂着10分才能下的题 下了这个 大家也不要浪费分数去下载其它版本的了,基本上都有 共享 一起进步 中国加油 ACMer...
### ACM POJ PKU 最全题目分类解析 #### 动态规划(DP) 在计算机科学领域,动态规划(Dynamic Programming, DP)是一种重要的算法思想,主要用于解决多阶段决策过程中的优化问题。它通过将原问题分解成相互重叠的...
根据提供的标题“poj pku图论、网络流入门题总结、汇总”及描述“很经典的图论,网络流入门的题目,值得一看啊~~其中有简单的解析”,本篇将对这些经典图论与网络流问题进行详细的分析和总结。通过梳理各题目及其...
1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1011 1012 1013 1014 1015 1017 1018 1019 1028 1032 1035 1040 1042 1045 1046 1047 1050 1056 1061 1062 1063 1065 1067 1068 1080 1083 1088 1089 1091 1094 ...
1011,1012,1013,1014,1015,1017,1026,1028,1032,1035,1041,1046,1129 1149 1154 1165 1182 1185 1190 1191 1201 1251 1273 1275 1276 1286 1322 1338 1363 1364 1401 1456 1459 1564 1579 1637 1657 1658 ...
根据提供的文件信息,我们可以分析出该段代码是用于解决POJ平台上的2314题的一种解决方案,主要涉及到了变量管理、表达式处理等方面。下面将详细解释代码中的关键概念和实现逻辑。 ### 关键概念解析 #### Variable...
北大POJ1163-The Triangle
【标题】"POJ1163 - The Triangle" 是北京大学在线编程平台POJ上的一道算法题目。这道题目通常被归类为计算机科学与信息技术领域的算法问题,特别是涉及数据结构和动态规划的子领域。 【描述】该题目的解题报告详细...
【标题】"poj 130题 acm pku" 涉及的是ACM(国际大学生程序设计竞赛)中的PKU(北京大学)在线判题系统POJ(Problem Online Judge)的相关题目。ACM/ICPC(International Collegiate Programming Contest)是全球...
《POJ2109-Power of Cryptography:解题报告与AC代码解析》 在计算机科学领域,算法和编程竞赛是检验和提升编程技能的重要途径。POJ(Problem Set of Peking University)是由北京大学主办的一个在线编程竞赛平台,...
标题中的“pku1088.rar_pku 10_pku 1088_poj 1088”指的是北京大学(Peking University, PKU)编程竞赛中的第1088题,也称为POJ(Peking University Online Judge)的1088题。这个题目在编程竞赛社区中通常有一个特定的...
poj经典动态规划题目解题报告,包括经典的动态规划题目20多道,可以作为学习动态规划系统的资料,包括题目: Pku acm 1179 Polygon Pku acm 1125 Stockbroker Grapevine Pku acm 1160 post office Pku ...
【标题】"POJ1942-Paths on a Grid"是北京大学在线编程平台POJ上的一道经典算法题目,其主要目标是探索在网格上行走的路径问题。 【描述】该题目的描述中提到“解题报告+AC代码”,这暗示了解决此问题的关键在于...
根据给定的文件信息,我们可以总结出以下关于POJ(PKU)问题2494“Acid Text”以及其Java代码实现的关键知识点: ### 1. POJ(PKU)2494:Acid Text POJ(Peking University Online Judge)是北京大学的一个在线...
ACM PKU_poj 1197 仓库问题源代码,愿与大家共享。若谁更好的代码,多谢提供。
POJ2942-Knights of the Round Table 【Tarjan算法】 解题报告+AC代码 http://hi.csdn.net/!s/F3L8HO ================================== 我的POJ所有解题报告:...
标题中的“pku1151.rar_Atlantis_pku 11_poj Atlant_poj Atlantis_poj11”似乎是指北京大学(Peking University, PKU)编程竞赛中的一道题目,编号为1151,与“Atlantis”这个主题相关。这道题目在多个平台上也被提及...
标题中的"POJ.rar_pku ac_pku.1050"暗示了这是一个与北京大学(Peking University, 简称PKU)编程竞赛相关的压缩文件,其中包含了作者通过验证(Passed All Cases, 简称AC)的代码,具体是针对PKU题目编号1050的问题。...
【描述】该题目来源于北京大学的在线编程平台POJ(Problem Online Judge),编号为2739,名为"Sum of Consecutive Prime Numbers"。这是一道关于算法与数论的编程题目,要求参赛者编写程序来计算连续的素数之和。...
标题中的"poj3252.rar_pku 3252_poj32"表明这是一个与编程竞赛相关的资源,具体来说是北京大学(PKU)ACM竞赛中的问题3252。"poj"通常指的是"Programming Online Judge",这是一个在线编程比赛平台,而"Pku"则代表...