【发布时间】:2013-01-06 09:15:32
【问题描述】:
我在二维空间中有一组点。这些点有两种不同的类型(比如少数点是黑色的,而其余的点是白色的)。我需要找到一种算法来找到将两个点子集分开的多边形。多边形的顶点可以是这两种点中的任何一种。
我尝试了谷歌搜索,但找不到任何合适的算法。是否有任何算法可以做到这一点?
【问题讨论】:
-
这是来自当前 jan codechef.com 竞赛的一个问题。问题千字节。直到比赛结束后才帮助他?这似乎是作弊
我在二维空间中有一组点。这些点有两种不同的类型(比如少数点是黑色的,而其余的点是白色的)。我需要找到一种算法来找到将两个点子集分开的多边形。多边形的顶点可以是这两种点中的任何一种。
我尝试了谷歌搜索,但找不到任何合适的算法。是否有任何算法可以做到这一点?
【问题讨论】:
你的问题不是很清楚,但我假设你只是在问存在。考虑以下算法:
只要将多边形绘制得非常接近“星形”网络,就可以完成最后一步,因此您现在可以得到在 2D 中将黑点与白点分开的多边形
【讨论】: