传送门:You can Solve a Geometry Problem too题意:给n条线段,判断相交的点数。分析:判断线段相交模板题,快速排斥实验原理就是每条线段代表的向量和该线段的一个端点与 另一条线段的两个端点构成的两个向量求叉积,如果线段相交那么另一条线段两个端点必定在该线段的两边,则该...
分类:
其他好文 时间:
2015-03-11 23:12:07
阅读次数:
165
Problem Description
Stan has n sticks of various length. He throws them one at a time on the floor in a random way. After finishing throwing, Stan tries to find the top sticks, that is these sticks such that there is no stick on top of them. Stan has notic...
分类:
其他好文 时间:
2015-03-10 12:09:02
阅读次数:
166
题意:要求相交的线段都要塞进同一个集合里sol:并查集+判断线段相交即可。n很小所以n^2就可以水过 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 int f[1010]; 8 ...
分类:
其他好文 时间:
2014-12-12 13:11:37
阅读次数:
159
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1558解题报告:首先如果两条线段有交点的话,这两条线段在一个集合内,如果a跟b在一个集合内,b跟c在一个集合内,那么a跟c在一个集合内。在一个平面上,有两种操作:P:在这个平面上添加一条线段Q k:询问添...
分类:
其他好文 时间:
2014-11-18 23:06:47
阅读次数:
218
叉乘
(一)判断方向
(二)判断线段相交
(三)求三角形面积
(一)判断方向
叉乘的性质如下:
(1). P x Q > 0; 表示P在Q的顺时针方向;
(2). p x Q < 0; 表示P在Q的逆时针方向;
(3). P x Q = 0; 表示P和Q是共线的
P(x1,y1),Q(x2,y2), P*Q=x1y2-x2y1 判断结果三种状态
模版为:
struct p...
分类:
其他好文 时间:
2014-11-10 23:31:04
阅读次数:
519
题目意思:
给出n个线段,判断这n条线段中,线段相交的对数。
http://acm.hdu.edu.cn/showproblem.php?pid=1086
题目分析:
此题主要写出判断线段相交的函数,然后判断每一对线段即可,时间复杂度O(n*n)。详细解释见代码。
AC代码:
/**
*判断AB和CD两线段是否有交点:
*同时满足两个条件:('x'表示叉积)
...
分类:
其他好文 时间:
2014-11-04 22:54:18
阅读次数:
219
题目地址:HDU 1086
就这么一道仅仅判断线段相交的题目写了2k多B的代码。。是不是有点浪费。。。但是我觉得似乎哪里也优化不了了。。。。
判断线段相交就是利用的叉积。假如现在两条线段分别是L1和L2,先求L1和L2两个端点与L1的某个端点的向量的叉积,如果这两个的叉积的乘积小于0的话,说明L1在是在L2两个端点之间的,但此时并不保证一定相交。此时需要用同样的方法去判断L2是否在L1的两个端...
分类:
其他好文 时间:
2014-08-13 22:30:37
阅读次数:
307
链接:http://acm.fzu.edu.cn/problem.php?pid=1015Problem 1015 土地划分Accept: 714Submit: 1675Time Limit: 1000 mSecMemory Limit : 32768 KBProblem Description在D...
分类:
其他好文 时间:
2014-07-23 16:58:41
阅读次数:
348
强连通算法判断是否满足2-sat,然后反向建图,拓扑排序+染色。
一种选择是从 起点开始,另一种是终点-持续时间那个点 开始。
若2个婚礼的某2种时间线段相交,则有矛盾,建边。
容易出错的地方就在于判断线段相交。
若s1
输出路径的做法可以参考论文2-SAT解法浅析
#include
#include
#include
#include
#include
#include
#...
分类:
其他好文 时间:
2014-07-23 16:39:31
阅读次数:
262
今日集训第一日,遇到了判断线段相交问题。跟面积问题一样,这个同样可以用叉积来解决。数学原理证明:首先引出计算几何学中一个最基本的问题:如何判断向量在的顺时针方向还是逆时针方向?把p0定为原点,p1的坐标是(x1,y1),p2的坐标是(x2,y2)。向量的叉积(cross product)实际上就是矩...
分类:
其他好文 时间:
2014-07-12 00:37:19
阅读次数:
406