摘要: 由上表可以推断出当 \(a·b<0\) 时两个向量成钝角,否则成锐角,且这一点和先后顺序无关。点积不同于叉积,它不看运算顺序,太良心了! 阅读全文
posted @ 2022-03-19 15:45 Feyn618 阅读(544) 评论(0) 推荐(0) 编辑
摘要: link 模板一个。其实感觉说是求凸包的直径倒不如说是求平面内最远点对,毕竟它的输入没保证是个凸包,自己还要再求一遍啊…… 旋转卡壳的思想十分优雅易懂,就是先证明平面内最近点对一定是凸包上两点,再根据这个结论,枚举每一条边的同时找出离线段最远的点并更新答案即可。为了尽可能地降低找点的复杂度,对问题进 阅读全文
posted @ 2022-03-19 15:31 Feyn618 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 一些比较重要的知识,有关计算几何的基础。 叉积是:对于两个向量 \(a(x_1,y_1),b(x_2,y_2)\) ,有 \(a\times b=x_1y_2-x_2y_1\) ,而这个数值有几何意义,两个向量为相邻边的平行四边形的面积(有方向的, \(a\) 到 \(b\) 小于 \(\pi\) 阅读全文
posted @ 2022-03-19 14:20 Feyn618 阅读(418) 评论(0) 推荐(0) 编辑
摘要: link 显然可以想到,最后留下的那些直线肯定是斜率单调递增,即形成一个下凸包的,于是可以利用类似的方式进行维护。其实个人感觉用栈维护凸包的本质是考虑每个元素加入到答案集合中后会导致哪些元素被迫出去,而由于种种原因,出去的那些元素都只会是最后的几个,还是连续的,所以可以考虑用栈维护。 以上是通法。至 阅读全文
posted @ 2022-03-19 13:44 Feyn618 阅读(27) 评论(0) 推荐(0) 编辑
摘要: link 奈何本人太弱,到现在才开始学习计算几何,连个凸包都写了半天…… 本来用的第一篇题解里的啥啥方法没写出来,后来采用了另一种似乎更好理解的方法,算法名称鬼知道是什么也并不重要,于是就水过了。 思想很简单,一个凸包一定是由上下两部分组成的,从左往右来看,上半部分各边斜率单调递减,下半部分则单调递 阅读全文
posted @ 2022-03-19 11:27 Feyn618 阅读(27) 评论(0) 推荐(0) 编辑
摘要: link 很奇怪的是,我写这道题似乎比写那道peak还顺利一点。 虽然本蒟蒻到今天才写出这道题,但对于这道梗题相信很多Oier都有所耳闻,没错它就是OI名梗“关于SPFA,它死了”的来源(但其实对我来说并木有什么影响,反正我也不太想写SPFA)。 说回正题。题目中明确说了有一些询问,每个询问下你只能 阅读全文
posted @ 2022-03-19 08:56 Feyn618 阅读(99) 评论(0) 推荐(0) 编辑