摘要:
链接多边形的面积求解是通过选取一个点(通常为原点或者多边形的第一个点)和其它边组成的三角形的有向面积。对于两个多边形的相交面积就可以通过把多边形分解为三角形,求出三角形的有向面积递加。三角形为凸多边形,因此可以直接用凸多边形相交求面积的模板。凸多边形相交后的部分肯定还是凸多边形,所以只需要判断哪些点... 阅读全文
摘要:
链接本来在刷hdu的一道题。。一直没过,看到谈论区发现有凹的,我这种方法只能过凸多边形的相交面积。。就找来这道题试下水。两个凸多边形相交的部分要么没有 要么也是凸多边形,那就可以把这部分单独拿出来极角排序、叉积求面积。这部分的顶点要么p在q内的顶点,要么是q在p内的顶点,要么是两凸多边形的交点。用到... 阅读全文
摘要:
链接2986是3675的简化版,只有一个三角形。这题主要在于求剖分后三角形与圆的相交面积,需要分情况讨论。具体可以看此博客http://hi.baidu.com/billdu/item/703ad4e15d819db52f140b0b在分析第3、4两种情况时,我是用角度来进行判断的,如果 2 #i... 阅读全文
摘要:
链接可以根据反余弦和反正切算出角a和b的值, 然后向量旋转就可以了,图中的状态旋转rotate((2,0),a+b) 反状态把角度反过来,点取(-2,0)即可。不知道是不是理解错了,题意写着两圆距离》2,《3.4,在求得时候就加了特判,一直WA。。。去了特判就过了。为了提高精度,可以全化为atan2... 阅读全文
摘要:
链接连通图中:设一个平面图形的顶点数为n,划分区域数为r,一笔画笔数为也就是边数m,则有:n+r-m=2那么不算外面的那个大区域的话 就可以写为 n+r-m = 1那么这个题就可以依次求出每个连通图的r = m-n+1 累加起来 最后加上最外面那个平面。注意交点的去重,对于一个圆的边数其实就是交点的... 阅读全文
摘要:
链接题意:从左到右按顺序给你n个圆的半径,把左右两边想象成两堵墙的话,就是左右两边向里挤压,问哪些圆是对最后的宽度不影响。刚开始理解错了,。。以为怎么放圆使宽度最小。。这样就可以尽量使每个圆向左靠,找出当前圆与最左相切的圆,他们之间的那些圆肯定就是可以消除的,特判一下最左和最右就可以了。 1 #in... 阅读全文
摘要:
链接二分高度,算面积的地方有点麻烦,没有用求交点的模板,直接自己按三角形相似手算了一下,写的有点麻烦。上下界直接取水可放的最高点以及最低点。自己的长得很挫的代码 1 #include 2 #include 3 #include 4 #include 5 #include 6 #incl... 阅读全文
摘要:
hdu4911max(逆序数-k,0) 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 using namespace std; 10 #defin... 阅读全文
摘要:
链接枚举伞的圆心,最多只有20个,因为必须与某个现有的圆心重合。然后再二分半径就可以了。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include10 usi... 阅读全文
摘要:
链接貌似这样的叫解析几何重点如何求得过光源到圆的切线与地板的交点x坐标,可以通过角度及距离来算,如图,根据距离和半径可以求得角度a、b、r,自然也可以求得d1,d2.至于方向问题,在求r得时候 可以使r = asin((p.x-c.x)/d) p为源点,c为圆心 ,d为两点距离。若在反方向,自然r为... 阅读全文