![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算几何
pokemonn_getto_daze
这个作者很懒,什么都没留下…
展开
-
poj 2826
这题虽然以前就看过,这会算是亲自下手了一发。 殊不知,里边精度问题还是棒哭了。 1.sb这个点真心判得还无语。刚才这不还明明已经确定了点之间的关系么。。。 2.fabs 和abs。。。我太连清了 3.求两个直线连接的时候,如果用之前通过求相交的点,这种点是不可靠的。 4.+eps,听大神的话就是对的 多谢lab104_yifan大神带我走题库,刷题,膜#include #includ翻译 2016-07-28 09:44:23 · 205 阅读 · 0 评论 -
poj3304
改造相交方式还真是非常有趣 通过分析可以不用进行直线和线段之间相交,而是直接用线段和线段之间相交来判定,同时规范相交的函数进行修改 没有必要对第二个线段(即进行枚举的线段)要求第一个线段两段在其两侧 改造相交函数的含义是,此次过程中,,第一个线段的作用相当于可以认为是直线了,即求直线和线段相交的过程= = 看来我还是太连清了,居然会以为,其实是判断线段相交#include #includ翻译 2016-07-28 11:07:21 · 174 阅读 · 0 评论 -
poj2954
用nick定理 之前用的模板都是double 的= =,然后也是头一次将一堆模板删删删 tr_area这个是int 类型的,最后在处理两个/2过程同时进行,几个不同步的/2过程害得老夫debug了一小会= =#include #include #include #include #include using namespace std; struct Point { int原创 2016-07-28 18:41:43 · 426 阅读 · 0 评论 -
poj3675
这道题给我的感觉就是套模板,一直到circle与triangle求area过程,然后只是对多边形降解 那个三角形和圆求面积的函数似乎只能表现逆时针效应,否则会出错 继续仰慕lab104_yifan大神的思路#include #include #include #include #include const double eps = 1e-8; const double pi = acos(-翻译 2016-07-28 19:39:56 · 461 阅读 · 0 评论 -
URAL 1294
原以为是会分分钟搞定的。。结果也是折腾了半个小时 首先,明明列出了余弦公式,还先去求一下角度,这样就不大好了。 一开始看到int类型10000以内, 于是就像用int做,但是想到如果是这样的话中间过程可能会数据过多。 这个判断impossible情况真是比我想象中还要方便,直接对这个公式进行分析就可以了#include #include #include #include #include原创 2016-08-06 14:04:12 · 224 阅读 · 0 评论 -
URAL 1572
一开始没有将他当作一个三维视角审视的题目,各种平面分析感觉是不是有点繁琐。。。 后来被大神点播一下发现。。。的确竟然可以直接用get_max and get_min这样的过程轻松比较 我还是太连清了#include #include #include #include #include using namespace std; const double eps=1e-10; double g原创 2016-08-06 14:36:50 · 192 阅读 · 0 评论 -
URAL 1333
这题真是无语了。 想法的确挺好的,因为1%的精度可以了,同时,N 但是这个吃精度的事情真是无语 1.一开始我打算把所有的数据都乘以1000,结果数据出现了惊人的误差 2。同时,如果我用dcmp函数将double 类型变成int类型比较大小的时候,出现了蜜汁bug。 看来像这种只是经过了+-*的double 野生类型,直接用就可以了。。。 amazing#include #include翻译 2016-08-06 15:29:32 · 189 阅读 · 0 评论 -
UVA10733
头一次用polya定理,还是有点意思的= =膜拜yifan大神#include #include unsigned long long n; int main(){ while(~scanf("%llu",&n)&&n){ printf("%llu\n",(n*n*n*n*n*n+6*n*n*n+3*n*n*n*n+8*n*n+6*n*n*n)/24); }翻译 2016-08-03 12:18:04 · 276 阅读 · 0 评论 -
HDU 1221
这道题嘛,分析清楚,什么时候最大,什么时候最小#include #include #include #include using namespace std; struct Point { double x, y; Point() {} Point(double x, double y) { this->x = x; this->y原创 2016-08-10 23:37:14 · 683 阅读 · 0 评论