Dado um número inteiro positivo <100 (de 1 a 99, incluindo 1 e 99), gera muitos cacifos.
Um armário é definido da seguinte maneira:
+----+
| |
| |
| |
| nn |
+----+
onde nn
está o número do armário, na base 10. Se houver um número de 1 dígito, ele será expresso com um 0 na frente. Por exemplo, o número do armário 2 exibe o número 02
.
Os armários podem ser empilhados, mas com altura até 2:
+----+
| |
| |
| |
| on |
+----+
| |
| |
| |
| en |
+----+
on
denota um número ímpar, en
um número par. Armários também podem ser colocados um ao lado do outro.
+----+----+
| | |
| | |
| | |
| 01 | 03 |
+----+----+----+
| | | |
| | | |
| | | |
| 02 | 04 | 05 |
+----+----+----+
Observe que o armário número 5 é um armário com números ímpares que fica na parte inferior. Isso ocorre porque, quando você tem uma entrada com números ímpares, o último armário deve ser colocado no chão (porque um armário suspenso custa muito). O exemplo acima, portanto, é a saída esperada para n = 5. n = 0 deve retornar um nada.
Regras: Métodos padrão de entrada / saída. Entrada em qualquer formato conveniente, saída como uma string. Aplicam-se brechas padrão.
Casos de teste:
Input
Output
---------------------
1
+----+
| |
| |
| |
| 01 |
+----+
--------------------- (newlines optional in case 1)
4
+----+----+
| | |
| | |
| | |
| 01 | 03 |
+----+----+
| | |
| | |
| | |
| 02 | 04 |
+----+----+
---------------------
5
+----+----+
| | |
| | |
| | |
| 01 | 03 |
+----+----+----+
| | | |
| | | |
| | | |
| 02 | 04 | 05 |
+----+----+----+
---------------------
16
+----+----+----+----+----+----+----+----+
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| 01 | 03 | 05 | 07 | 09 | 11 | 13 | 15 |
+----+----+----+----+----+----+----+----+
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| 02 | 04 | 06 | 08 | 10 | 12 | 14 | 16 |
+----+----+----+----+----+----+----+----+
Isso é código-golfe , então o código mais curto vence!
1
precisam ser exibidas?