225

问答题 225 /413

一个二维坐标系,给你n个点的坐标,画一条直线把他们分成两份(任意直线),要求数量尽量等分,复杂度不能太高。

参考答案

参考回答:

我下意识觉得考察我图论,想了一下感觉不是的,然后给他讲了讲我的思路:假设按照y坐标分,那么遍历n个坐标,用一个最大堆来保存,然后从顶部弹出n/2次,如果当前顶部的数和最后弹出的数不一样,就可以在中间画一条线)他说如果所有点纵坐标都一样呢?如果有点重合的呢?(我有点蒙蔽了,觉得我这思路是错的,又想了几分钟其他的方法,又不由自主往图论上想,最后还是没想起来。其实貌似再同样做法对横坐标处理一次应该可以避免他说的问题吧),最后问他怎么做,他说用二分的思想,然后对横纵坐标求中位数、众数什么的。