我是新来的,所以我希望你不要太快失去耐心:D我有一个算法问题,我不知道如何解决。我已经在堆栈溢出上寻找了类似的东西,甚至有人发布了一个类似于我的问题,但是很少有细节使得无法在这里修改解决方案。
我在坐标系中有一个矩形区域,其中有一些点。我想根据要点创建“包裹”。一个包裹是一个矩形,里面只有一个点。包裹的侧面可以包含在该区域的边界中,也可以在该区域内的某处绘制,只要它们中的每一个都穿过至少一个点。正确宗地的一些例子:
问题是,我必须返回将使所有点“占用”的最小数量的地块。因此,在上述情况下,我认为其中一个解决方案可能是:
所以正确的答案是3 。
我认为值得从“在角落里”创建一个包裹开始,因为剩下的点只分散在两个方向上。如果我们从在集合中间创建一个地块开始,那么每个方向的点都可能分散,而且由于地块不能相互交叉,我们将不得不使用更多的地块。
问题是,我不知道我的推理是否正确,我想不出基于它的正确算法。你们觉得它合理还是我认为没有完全不同的方法?