Ho molti cuboidi nello spazio 3D, ognuno ha un punto di partenza su (x, y, z) e ha dimensioni di (Lx, Ly, Lz). Mi chiedo come trovare un cubo più grande in questo spazio 3D contenuto nell'unione dei cuboidi. Esiste un algoritmo efficiente per questo?
Ad esempio, se ho i seguenti cuboidi:
- un cuboide che inizia con (0,0,0) con dimensioni (10,10,10),
- un cuboide a (10,0,0) con dimensioni (12,13,15),
- un cuboide a (0,10,0) con dimensioni (10,10,10),
- un cuboide a (0,0,10) con dimensioni (10,10,10), e
- un cuboide a (10,10,10) con dimensioni (9,9,9).
Quindi, il cubo più grande contenuto nell'unione di questi cuboidi sarà un cubo che inizia con (0,0,0) con dimensioni (19,19,19).
Una versione più generale di questa domanda:
Data una raccolta di caselle in R d , trova il più grande ipercubo contenuto nell'unione delle caselle.