Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 如何定义一条与尽可能多的矩形相交的直线?_Algorithm - Fatal编程技术网

Algorithm 如何定义一条与尽可能多的矩形相交的直线?

Algorithm 如何定义一条与尽可能多的矩形相交的直线?,algorithm,Algorithm,我正在寻找一种算法来解决这个问题,而不是强化学习和那些需要很长时间才能运行的学习 在x-y平面上,放置n个矩形。一条直线最多可以通过多少个矩形 输入 矩形的数目是n 数字i矩形的左上角坐标由x[i],y[i]给出。 其宽度和高度由w[i],h[i]给出。 例子 统治 0

我正在寻找一种算法来解决这个问题,而不是强化学习和那些需要很长时间才能运行的学习

在x-y平面上,放置n个矩形。一条直线最多可以通过多少个矩形

输入 矩形的数目是n
数字i矩形的左上角坐标由x[i],y[i]给出。
其宽度和高度由w[i],h[i]给出。

例子 统治

  • 0 现在,使用这100个点,您可以构造一条最佳拟合线。您可以了解最适合的线条和线条


    这样获得的直线将通过大多数矩形。

    你可以通过不假设它需要是一条直线来作弊。交叉线的原点必须是0/0吗?交叉直线不一定要有0/0。到目前为止,你尝试了什么,你在为哪一部分而挣扎?相关:。听起来对于大小相似或分布“均匀”的矩形很有希望。(对点进行加权(按矩形周长而非面积)是否有助于处理多个小/难击中的矩形和多个较大的矩形?)
    n
    x[0] y[0] w[0] h[0]
    x[1] y[1] w[1] h[1]
    ・
    ・
    x[n-1] y[n-1] w[n-1] h[n-1]
    
    Input
    4
    0    0    1    1
    9999 0    1    1
    0    9999 1    1
    9999 9999 1    1
    
    Output
    2
    
    Input
    6
    2    1    4    3
    1   10    1    3
    5    7    5    4
    8    8    3    2
    13   4    3    1
    17   1    1   14
    
    Output
    5