随笔分类 -  计算几何—凸包

该文被密码保护。
posted @ 2019-06-13 11:08 lokiii 阅读(1) 评论(0) 推荐(0)
摘要:枚举起点,然后设f[i][j]为上凸壳上一个点是i当前点是j的最大面积,g是下凸壳,然后合并的时候枚举结束点t合并上下凸壳即可 这样的好处是每次转移都是往凸多边形里加一个三角形(s,i,j),所以判断转移合法只要预处理出所有三角形是否合法即可,同时预处理出三角形面积,转移就是f[j][k]=max( 阅读全文
posted @ 2019-05-03 16:59 lokiii 阅读(311) 评论(0) 推荐(0)
摘要:凸包模板 cpp include include include include using namespace std; const int N=5005; int n,w,top; struct dian { double x,y; dian(double X=0,double Y=0) { x 阅读全文
posted @ 2018-05-04 09:22 lokiii 阅读(99) 评论(0) 推荐(0)
摘要:首先处理处理出来哪些边能连——能把羊分成两个偶数部分的,实现是在凸包上枚举极点,极角排序,枚举凸包上点对判断两边羊的个数的奇偶即可,设可以连边为v[i][j]=1 然后设f[i][j]为从i到j个凸包上点的方案数,初始状态是相邻点f[i][i+1]=1,转移是 $$ f[i][j]=\sum_{k= 阅读全文
posted @ 2018-04-26 09:26 lokiii 阅读(260) 评论(0) 推荐(0)
摘要:参考:https://www.cnblogs.com/zhuohan123/p/3237246.html 因为一c可以由1 a b得出,所以删掉c,把a,b抽象成二维平面上的点。首先考虑一个客户需求能被哪些原料配出来:两个原料点连线上的点都可以,要是多个原料点,那么这些线的向量构成的凸包中的点都可以 阅读全文
posted @ 2018-03-09 21:28 lokiii 阅读(153) 评论(0) 推荐(0)
摘要:```cpp include include include include using namespace std; const int N=1005; const double eps=1e 8; int T,n,r,w,top; struct dian { double x,y; dian(d 阅读全文
posted @ 2018-03-03 22:04 lokiii 阅读(124) 评论(0) 推荐(0)