今天上午再补题,计算几何,看了一下对于极角排序的四种方式:叉积,complex类,atan2()函数,象限四种。 再就是看了五道数学题,容斥,积分,欧拉函数,对了今天还有莫比乌斯反演没看。中午吃过饭就开始,打比赛了,题目是真的长,按照前几场的惯例1011是水题,结果半小时过去了,还是没有队伍提交,恐 ...
分类:
其他好文 时间:
2017-08-17 22:52:19
阅读次数:
207
平面上n个点,每个点带权,任意两点间都有连线,连线的权值为两端点权值之积。没有两点连线过原点。让你画一条过原点直线,把平面分成两部分,使得直线穿过的连线的权值和最大。 就把点极角排序后,扫过去,一侧的点会跨过直线与另一侧的所有点形成连线。此时的答案为两侧的权值和之积,尝试用此更新最终答案。 ...
分类:
编程语言 时间:
2017-08-17 00:45:01
阅读次数:
227
acm.hdu.edu.cn/showproblem.php?pid=6127 【题意】 给定平面直角坐标系中的n个点,这n个点每个点都有一个点权 这n个点两两可以连乘一条线段,定义每条线段的权值为线段两端点点权的乘积 现在要过原点作一条直线,要求这条直线不经过任意一个给定的点 在所有n个点两两连成 ...
分类:
编程语言 时间:
2017-08-16 21:50:32
阅读次数:
220
平面上给你n(不超过2000)个点,问你能构成多少个面积在[A,B]之间的Rt三角形。 枚举每个点作为直角顶点,对其他点极角排序,同方向的按长度排序,然后依次枚举每个向量,与其对应的另一条直角边是单调的,可以用一个pointer做出来,然后可以得出那些同方向的向量的区间(这个代码好像有点问题,可能会 ...
分类:
编程语言 时间:
2017-08-09 21:12:11
阅读次数:
235
平面上n个红点,m个黑点,问你多少个黑点至少在一个红三角形内。 对红点求凸包后,转化为询问有多少个黑点在凸包内。 点在凸多边形内部判定,选定一个凸包上的点作原点,对凸包三角剖分,将其他的点极角排序之后,使用二分法就可以判定点在哪个剖分出来的三角形的夹角内,然后用叉积即可判定其在凸包内还是外,O(lo ...
分类:
编程语言 时间:
2017-08-07 10:19:22
阅读次数:
138
学习了极角排序的一些套路 UVA11696 给你一些圆和一些点,保证点不在圆内,两点相连通当且仅当两点联结的线段不与任何一个圆相交,问联通块个数 跟之前那道UVA很类似 其实更加简单 枚举每个点 把其他所有点和圆对他极角排序 用set维护圆到当前点的切线的最短距离 因为点不在圆内 所以直接判断距离就 ...
分类:
其他好文 时间:
2017-08-05 20:32:06
阅读次数:
129
关于极角排序: 在平面内取一个定点O,叫极点,引一条射线Ox,叫做极轴,再选定一个长度单位和角度的正方向(通常取逆时针方向)。 对于平面内任何一点M,用ρ表示线段OM的长度(有时也用r表示),θ表示从Ox到OM的角度,ρ叫做点M的极径,θ叫做点M的极角,有序数对 (ρ,θ)就叫点M的极坐标。 那么给 ...
分类:
编程语言 时间:
2017-07-28 09:49:28
阅读次数:
350
极角排序详解 名词释义: 在平面内取一个定点O,叫极点,引一条射线Ox,叫做极轴,再选定一个长度单位和角度的正方向(通常取逆时针方向)。对于平面内任何一点M,用ρ表示线段OM的长度(有时也用r表示),θ表示从Ox到OM的角度,ρ叫做点M的极径,θ叫做点M的极角,有序数对 (ρ,θ)就叫点M的极坐标 ...
分类:
编程语言 时间:
2017-07-25 18:09:49
阅读次数:
257
题目链接 Paint Tree 给你一棵n个点的树和n个直角坐标系上的点,现在要把树上的n个点映射到直角坐标系的n个点中,要求是除了在顶点处不能有线段的相交。 我们先选一个在直角坐标系中的最左下角的点,把根结点放到这个点中,然后对剩下的点进行极角排序,按逆时顺序一个个塞进来,类似地递归处理。 这样就 ...
分类:
编程语言 时间:
2017-07-22 00:13:40
阅读次数:
330
今天算是把半平面交的nlogn版本搞出来了 也做了一些半平面交的经典题 最重要的是感受到了 计算几何的精度的深深的恶意 nlogn的做法 和凸包类似 维护一个直线的双端队列 极角排序后每次加入一条直线都从队首队尾弹出无效直线 在加入时和队尾直线产生交点 最后队首队尾产生交点 中间还有当队尾两直线向量 ...
分类:
其他好文 时间:
2017-07-21 22:12:25
阅读次数:
201