Área de piso mínima cubierta por cubos o cubos mínimos en el piso [cerrado]

Aug 17 2020

Hay un almacén que tiene solo 3 lados, todos tocándose perpendicularmente (2 paredes infinitamente grandes y un piso infinitamente grande). $N$cubos de volumen unitario. Para almacenar cubos en el almacén hay 2 reglas:

  1. Se puede colocar en cualquier parte del suelo.
  2. Cubo $A$ se puede colocar en Cube $B$ sólo si hay cubos en los cuatro lados de $B$ a menos que el lado ya esté bloqueado por una pared.

Encuentre el área de piso mínima cubierta para almacenar $N$ cubos.

Ejemplos:

  • Si $N=3$: superficie mínima del suelo $= 3$
  • Si $N=4$: superficie mínima del suelo $= 3$, (ya que el cuarto cubo se puede colocar en una esquina tocando las paredes de 2 lados y 2 cubos en los otros lados)

Respuestas

1 ParasSain Aug 18 2020 at 08:10
import numpy as np
N = int(input())
n = int(np.real(np.roots([1,3,2,-6*N])[2]))
c = int(np.ceil(np.roots([1,1,-2*(N-int((n*(n+1)*(n+2))/6))])[1]))
print(int((n*(n+1))/2)+c)

Este código en python dará la respuesta en tiempo constante.