Luas lantai minimum yang ditutupi oleh kubus atau kubus minimum di lantai [tertutup]

Aug 17 2020

Ada gudang yang hanya memiliki 3 sisi yang semuanya saling bersentuhan tegak lurus (2 dinding besar tak terhingga dan satu lantai besar tak terhingga) Ada $N$kubus volume satuan. Untuk menyimpan kubus di gudang ada 2 aturan -

  1. Bisa diletakkan dimana saja di lantai
  2. kubus $A$ dapat ditempatkan di Cube $B$ hanya jika ada kubus di keempat sisi $B$ kecuali sisinya sudah diblokir oleh dinding.

Temukan luas lantai minimum yang tercakup untuk penyimpanan $N$ kotak.

Contoh:

  • jika $N=3$: luas lantai minimum $= 3$
  • jika $N=4$: luas lantai minimum $= 3$, (karena kubus ke-4 dapat ditempatkan di salah satu sudut yang menyentuh dinding dari 2 sisi dan 2 kubus di sisi lain)

Jawaban

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)

Kode dalam python ini akan memberikan jawaban dalam waktu yang konstan.