Há uma música satírica chamada Little Boxes , originalmente de Malvina Reynolds, sobre a expansão suburbana que tem letras da seguinte forma:
Pequenas caixas na encosta,
Pequenas caixas feitas de cócegas,
Pequenas caixas na encosta,
Pequenas caixas iguais.
Há uma verde e uma rosa
E uma azul e uma amarela
E todas são feitas de cócegas
E parecem todas iguais.
Seu trabalho aqui é, dada uma entrada inteira n>1
que representa o tamanho da casa, imprima as quatro "caixinhas" usando as seguintes cores (na notação 0xRRGGBB):
Green -- 0x00FF00
Pink --- 0xFF00FF (technically magenta)
Blue --- 0x0000FF
Yellow - 0xFFFF00
Se o seu console em particular não tiver essas cores exatas, você poderá usar o mais próximo disponível (por exemplo, códigos de escape ANSI).
As casas são construídas n
_
representando o piso e a linha do telhado. Eles são cercados por caracteres n/2
(arredondados) |
que representam as paredes. Os telhados são sempre 2
altos e são dois /
na borda esquerda, dois \
na borda direita e n-2
-
representam o pico do telhado. À medida que as casas aumentam, o tamanho comparativo do telhado diminui; isto é pretendido.
Aqui está uma casa de tamanho 2
:
/\
/__\
|__|
Aqui está o tamanho 3
:
/-\
/___\
| |
|___|
Aqui está o tamanho 7
:
/-----\
/_______\
| |
| |
| |
|_______|
Dada a entrada de 7
, produz quatro casas de tamanho 7
como descrito acima, com a primeira em verde, a segunda em rosa (magenta), a terceira em azul e a quarta em amarelo. A saída das cores nessa ordem é importante.
Exemplo de imagem de tamanho 3
:
Regras
- As casas podem ser horizontais ou verticais, desde que haja uma separação clara entre elas.
- As novas linhas iniciais / finais ou outros espaços em branco são opcionais, desde que as casas sejam alinhadas adequadamente.
- Um programa completo ou uma função são aceitáveis. Se uma função, você pode retornar a saída em vez de imprimi-la.
- A saída pode ser no console, salva como imagem, etc.
- As brechas padrão são proibidas.
- Isso é código-golfe, portanto todas as regras usuais de golfe se aplicam e o código mais curto (em bytes) vence.