半平面交
LZJ209
主页:https://zongjia.li/
展开
-
BZOJ 1007: [HNOI2008]水平可见直线
这题应该可以算是一道半平面交的入门铺垫题(阉割版),因为每条直线确定的平面都位于其上方,所以免去了向量的麻烦。具体方法就是先按照斜率排序,判断新加入的直线与栈顶直线交点是否在之前的栈顶与栈顶下面的直线交点的左侧,如果在左侧就弹掉栈顶。多条斜率相同的直线则取b最大的一个。#include<cstdio>#include<cstdlib>#include<cstring>#include<stri原创 2017-01-12 10:13:10 · 391 阅读 · 0 评论 -
BZOJ 2618: [Cqoi2006]凸多边形
真●半平面交,半平面交模板题,按照题目描述将每个多边形拆分成n个向量,我们规定向量的左侧为其指定的区域,参照了Po姐的写法,因为双端队列实在是不好搞,我们先在一个方向加线,然后再在最后删队首队尾,值得注意的是用向量求交点和用向量判断一个点是否在这条向量的左面。#include<cstdio>#include<cstdlib>#include<cstring>#include<string>#原创 2017-01-12 10:23:19 · 386 阅读 · 0 评论