Qualcuno ha impilato frettolosamente i regali di Natale, ed è un bel casino:
========================
| |
========================
=============
| |
| |
| |
| |
| |
| |
=============
=======
| |
| |
| |
=======
===================
| |
| |
| |
===================
=================
| |
| |
| |
| |
=================
=======
| |
| |
=======
Come seriamente, in che modo il presente presenta un equilibrio uniforme. Probabilmente è un martello. Per evitare che questa torre di regali si sgretoli, devi riordinare i regali in modo che si accumulino bene:
=======
| |
| |
=======
=======
| |
| |
| |
=======
=============
| |
| |
| |
| |
| |
| |
=============
=================
| |
| |
| |
| |
=================
===================
| |
| |
| |
===================
========================
| |
========================
Le regole
- Ogni presente è costituito da una parte superiore e inferiore di
=
caratteri e da una o più file centrali, costituite da due|
separate da spazi. La larghezza del presente è la stessa in tutte le sue file. - Non ci sono righe vuote.
- I regali consecutivi si sovrapporranno in almeno una colonna.
- I regali devono essere impilati in ordine decrescente di larghezza. In caso di pareggio, il presente più alto dovrebbe scendere al di sotto del presente più piatto.
- I regali dovrebbero essere centrati sul presente sottostante. Se il presente non può essere posizionato esattamente al centro (perché la differenza in larghezze è dispari), puoi scegliere una posizione che è mezzo carattere al centro.
- Si può o meno supporre che l'input abbia una sola nuova riga finale, ma si prega di indicare la propria ipotesi.
- La tua soluzione non deve funzionare per un input vuoto, ma deve essere in grado di gestire un singolo regalo.
- È possibile scrivere un programma o una funzione, che accetta input tramite STDIN o argomento della funzione e restituisce il risultato o lo stampa su STDOUT.
- Questo è il golf del codice, quindi vince la risposta più breve (in byte).