点及直线关系
Neo__Z
这个作者很懒,什么都没留下…
展开
-
poj2318 Toys 【计算几何】
题目大意:给出一个矩形抽屉,然后有n个板子放在其中,连接上下底。给出m个玩具的坐标(视作点), 问n+1个区间内,每个区间中有多少玩具。解题思路:直接二分+叉乘判断每个玩具在那个区间内即可。#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<cmath>#include<algorith原创 2017-11-22 21:00:35 · 237 阅读 · 0 评论 -
poj2074 Line of Sight【计算几何】
题目大意:题意:给出一个房子(看成线段)的端点坐标,和一条观光区的两端坐标,给出一些障碍物(看成线段)的两端坐标(都平行于x轴)。问在路上能看到完整房子的最大连续长度是多长。 【注意】 1. 输入的线段(x1,x2,y)保证x1<<x2 2. 输入的home一定在观光区上面 3. 输入的障碍物不一定在home和观光区之间 4. 如果输入的障碍物与home同y轴,不管重合与部分重合还是不重合原创 2017-11-22 21:06:18 · 490 阅读 · 0 评论 -
poj2653 Pick-up sticks
题目大意:按顺序放上一些线段,为最后未被其他线段覆盖的线段有哪些?解题思路:数据很水,n2n^2也能过,主要考察线段相交的判断。 倒着加入,看每条线段有没有与先加入的相交,没有则不被覆盖。 若两条线段相交,则其两端点分别在另一条线段两侧,用叉乘判断即可。#include<iostream>#include<cstdio>#include<cstring>#include<string>#原创 2017-11-23 07:54:49 · 210 阅读 · 0 评论 -
bzoj3707 圈地【计算几何】
解题思路:如果枚举了两个点a,b。如果以点a,b所在直线为y轴的话,可以看出面积最小的就是离这个坐标系y轴最近的一个点。如果我们能够快速的得知最近的点的话,就可以将复杂度降低到O(n2n^2)。把这些点两两之间求出一条直线,记录这条直线是哪两个点取到的,记录这条直线的斜率k。然后按照k排序,我们可以依次按照k递增连续变化的顺序处理这些直线。我们将点按x为第一关键字,y为第二关键字排序组成一个序列,可原创 2017-11-23 09:25:46 · 706 阅读 · 0 评论 -
hdu1007 Quoit Design 【计算几何+分治】
题目大意:给出平面上n个点,求最近两点距离的一半。解题思路:很经典的平面分治题。假设我们把所有点按 xx 坐标平均分成了左右两个部分,设平分直线为x=x0x=x_0,那么最近点对(p,q)(p,q)的距离就是下面二者的最小值: (1)p,qp,q同属于左半边或右半边时的最近点对距离。 (2)p,qp,q属于不同区域时的最近点对距离。 对于情况(1),是与原题完全相同的子问题,可以递归处理。设左原创 2017-12-20 21:36:21 · 261 阅读 · 0 评论 -
bzoj3165: [Heoi2013]Segment【线段树+计算几何】
Description要求在平面直角坐标系下维护两个操作: 1.在平面上加入一条线段。记第i条被插入的线段的标号为i。 2.给定一个数k,询问与直线 x = k相交的线段中,交点最靠上的线段的编号。 Input第一行一个整数n,表示共n 个操作。 接下来n行,每行第一个数为0或1。 若该数为 0,则后面跟着一个正整数 k,表示询问与直线 x = ((k +las...原创 2018-02-26 15:00:02 · 242 阅读 · 0 评论 -
BJ模拟 Rectangle Query【分块+bitset】
题目描述:平面上有 nnn 个点,你需要回答qqq个询问: 给定 x1,x2,y1,y2x1,x2,y1,y2 x_1,x_2,y_1,y_2 ,在满足 x1≤x≤x2x1≤x≤x2x_1≤x≤x_2 且 y1≤y≤y2y1≤y≤y2 y_1≤y≤y_2 的所有点 (x,y)(x,y) (x,y) 中,有多少个不同的横坐标(x坐标)和不同的纵坐标(y坐标)? 强制在线,n,q≤5000...原创 2018-05-03 18:48:19 · 182 阅读 · 0 评论