计算几何基础
guoshiyuan484
这个作者很懒,什么都没留下…
展开
-
POJ 1127 我的第一次计算几何
#include#include#include#includeusing namespace std;double eps = 1e-10;double add(double a, double b){ if (fabs(a + b) < eps)return 0; return a + b;}struct point{ point(){}; int x, y; p原创 2017-04-28 15:28:03 · 317 阅读 · 0 评论 -
51nod1298
判断线段与园是否有交。。其实很简单啊。。。就是先看两点是都在园内还是园外,然后求一个点到线段最短距离就好了点到线段最短距离怎么弄?用向量比比划划就好了。。。教程:http://blog.csdn.net/qq_21120027/article/details/50525835#include#include#include#includeusing namespace std;原创 2017-08-30 22:32:20 · 234 阅读 · 0 评论 -
bzoj1038
一道很棒的题,思维难度不大,但是很考实现细节。做了此题发现计算几何有点入门了。#include#include#include#includeusing namespace std;const double eps = 1e-8;double cc(double a){ if (fabs(a) < eps) return 0; else return a;}s原创 2017-10-06 20:10:49 · 227 阅读 · 0 评论 -
2017北京网络赛
此题你从特殊情况开始考虑就3中 点是直线 点形成凸包 点形成凸包且凸包内有一些点然后主要就是注意某些点他如果和其他点在同一个集合中时,那么这个集合一定不只是有这两个点,所以我们让这类点颜色相同就好了no的情况只有n=1 2 3的时候才是可能的1.直线的话就是除开两端的点外随便让一个点是‘A'其他是'B’就好了2.凸包的话隔一个点是'A'其他是'B'3.凸包里有个点的话,凸包内的原创 2017-09-26 09:31:32 · 301 阅读 · 0 评论 -
凸包应用——旋转卡壳bzoj1069
#include#include#include#includeusing namespace std;struct pointt{ double x, y;};pointt operator-(pointt a, pointt b){ pointt c; c.x = a.x - b.x; c.y = a.y - b.y; return c;}pointt opera原创 2017-07-29 10:03:37 · 254 阅读 · 0 评论 -
凸包bzoj1670
#include#include#include#includeusing namespace std;struct pointt{ int x,y; pointt() {}};pointt point[6000],tubao[6000];pointt operator-(pointt a, pointt b){ pointt c; c.x = a.x - b.x;原创 2017-07-28 21:38:38 · 233 阅读 · 0 评论 -
半平面交。poj2451
#include #include#include#include#includeusing namespace std;//精度控制 const double eps = 1e-10;double ans = 0;int dcmp(double x){ if (fabs(x)<eps) return 0; return x<0 ? -1 : 1;原创 2017-07-29 14:51:04 · 267 阅读 · 0 评论 -
半平面交uvaliva3890
#include#include#include#includeusing namespace std;struct pointt{ double x, y; pointt(double x, double y) :x(x), y(y) {} pointt() {}};pointt operator+(pointt a, pointt b){ return point原创 2017-07-30 18:09:38 · 245 阅读 · 0 评论 -
半平面交
不会啊 ! 等待不吭!!!bzoj 2618原创 2017-06-16 11:53:35 · 197 阅读 · 0 评论 -
bzoj1573
提示:1.考虑如何求两条直线的交点(用叉积)其实挑战程序设计竞赛上有2.考虑如何求直线与圆的交点,其实把直线方向向量求出来后再用点距离就好了3.考虑两条直线在园内相交的条件。。。易错点:a,b,c都有可能为0;这题你不能用圆的方程求交点,因为会出现溢出在计算过程种,数据太弱,所以一些程序没被卡#include#include#include#includeusi原创 2018-02-13 10:57:57 · 223 阅读 · 0 评论