平面上的n个点-高效扫描并标记它们

问题描述

输入n平面(p1,p2,...,pn)中不同点的坐标为正,每个点p=(p.x,p.y)的值为p.val

问题:按照上面显示的顺序依次扫描这些点。在此过程中,在迭代1=<i<=n中,除非事先对其进行标记,否则将标记pi。在此迭代(i中,我们标记了尚未标记的每个点pjj!=i1=<j<=n),仅在以下情况下:至少有pj.val个点已标记 AND ,其x坐标低于{{11}} AND 其{{1} }坐标也低于pj.x

输出:给出此输入后,请描述一种算法,该算法将为每个点返回在上述过程中对其进行标记的迭代。

复杂度时间要求:该算法必须在y或更优版本下运行。

我的尝试:我想到了一些非常幼稚的问题,遍历每个点并标记它(如果尚未标记),并在同一迭代(根据需要)中将其他任何点彼此对照({pj.y个)-如果坐标较低且未标记... 似乎是无限的,我真的很困惑。

示例

O(n^3)

在这种情况下,将在第一次迭代期间标记所有点,其中n-1p=( (1,2),1],[(5,6),2] [(3,4),1] ) i=1

一个标记的(1,2)

第二个要标记的(3,4)

第三个要标记的(5,6)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)