pku 1696 Space Ant(转角,凸包扩展)
来源:互联网 发布:华中数控铣床编程实例 编辑:程序博客网 时间:2024/04/25 21:37
有一个外星人,只会左转不会右转,走路的时候还会在地上留下痕迹,外星人不能越过自己留下的痕迹。
平面上有n个点,外星人从最下面一个位置出发,问最多能走遍平面上的多少个点,怎么走。
因为是从最下面的位置出发,很明显一直沿着最外围的点走,是可以走遍所有点的。这样的寻点和凸包很像,只是在走到凸包的最后一个节点时,不去连接起始节点,而是往凸包内部继续寻找。
出发后,尽量找转角小的点。
一种做法是用向量点积求转角的cos值来比较,这样做的缺点是运算量大,角度的比较会有点麻烦。
另一种做法,先任意选定一个点作为下一个节点,然后和剩下的节点用向量叉积比较,判断向量方向关系,选择更靠右边的向量。这样做所有的运算都是整数运算,而且比较方便。
两种做法的时间效率都是O(n^2)。还有一点需要注意的是转角相同的时候选择距离近的点。
- pku 1696 Space Ant(转角,凸包扩展)
- PKU 1696 Space Ant
- POJ 1696 Space Ant(凸包变形)
- poj 1696 Space Ant (凸包)
- POJ-1696 Space Ant 凸包应用
- POJ 1696 Space Ant(凸包变形)
- POj 1696 Space Ant 凸包(极角排序)
- POJ 1696 || Space Ant (叉积,凸包变形题
- POJ 1696 Space Ant(凸包-卷包裹法)
- POJ1696 Space Ant 【凸包-ToLeft-Test】
- POJ1696-Space Ant(凸包)
- zoj 1429 || poj 1696 Space Ant 计算几何叉积或凸包改进版
- POJ 1696 Space Ant 类似凸包问题(叉积的应用)
- 凸包的变形 基点每次都在变化 poj 1696 Space Ant
- POJ 1696 Space Ant (卷包裹法求变形凸包)
- POJ 1696 Space Ant
- POJ 1696 Space Ant
- poj 1696 Space Ant
- linux安装网卡e1000e
- 尽可能的达到你们的要求
- 使用mysql截取、连接字符串
- zlib123开源压缩库的一些使用。
- 开始的地方
- pku 1696 Space Ant(转角,凸包扩展)
- 我的第一篇博客
- 网路安全并不只是边界保护
- 4进8出 数字音频处理器 超精度处理 旧瓶新酒
- 注册表项关于start参数的说明,一直以来都搞错了,竟然还写了个错误的程序禁用本级的一些自启动项,汗呀
- 硬件设计和驱动调试中一些常用的协议下载地址
- 集中注意力,排除干扰
- C 函数:该函数给出一个字节中被置 1 的位的个数
- C#日期时间格式化