文章列表
题目描述:http://poj.org/problem?id=2318
判断点与直线位置关系的题
#include <cstdio>
#include <algorithm>
using namespace std;
struct point {
int x,y;
};
struct line {
point a,b;
};
int xmult(line seg, point p) {
return (seg.b.x - p.x) * (seg.a.y - p.y) - (seg.a.x - p.x) * (seg.b.y - ...
题目描述: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 为9 ...
题目描述:http://www.programming-challenges.com/pg.php?page=downloadproblem&probid=111303&format=html
题目大意:给定三角形三边长,求内接圆半径。
//解该题需要一些三角形知识:
//1. p 为三角形周长一半,即 p = (a+b+c)/2.0
// 三角形面积 S = sqrt(p*(p-a)*(p-b)*(p-c))(海伦公式)
//2. 内接圆半径 r = S/p
// 另外该题还有一个很无聊的陷阱
// 当有一条边为 0 时,输出为:0.000,需要特殊处理
...
题目描述:
http://www.programming-challenges.com/pg.php?page=downloadproblem&probid=111302&format=html
另外做该题的时候参考了ybfq_wanglang的解题思路,地址如下:
http://hi.baidu.com/ybfq_wanglang/blog/item/9fff3b0d116176206159f33d.html
//该题关键在于判断线段是否与圆相交
//具体解释参见代码注释
//还有就是该题不用求切点坐标
//利用弧度完成圆弧段的长度计算
//用到反余弦函数
#in ...
题目描述:http://poj.org/problem?id=1971
// 该题关键是如何判定给定4点可否构成平行四边形
// 根据平行四边形对角线互相平分,可知该题中只要
// 两对顶点连线的中点重合,就可以构成平行四边形(???),
// 因为不存在4点共线
// 发现poj的测试数据不完善
// 在最后统计平行四边形个数的时候
// 如果不考虑 i == k + 2 这种情况也可以通过
#include <cstdio>
#include <algorithm>
using namespace std;
struct point ...