J'ai beaucoup de cuboïdes dans l'espace 3D, chacun a un point de départ à (x, y, z) et a une taille de (Lx, Ly, Lz). Je me demande comment trouver un plus grand cube dans cet espace 3D qui est contenu dans l'union des cuboïdes. Existe-t-il un algorithme efficace pour cela?
Par exemple, si j'ai les cuboïdes suivants:
- un cuboïde commençant à (0,0,0) avec une taille (10,10,10),
- un cuboïde à (10,0,0) de taille (12,13,15),
- un cuboïde à (0,10,0) de taille (10,10,10),
- un cuboïde à (0,0,10) de taille (10,10,10), et
- un cuboïde à (10,10,10) de taille (9,9,9).
Ensuite, le plus grand cube contenu dans l'union de ces cuboïdes sera un cube commençant à (0,0,0) avec une taille (19,19,19).
Une version plus générale de cette question:
Étant donné une collection de boîtes dans , trouvez le plus grand hypercube contenu dans l'union des boîtes.R d