Descrição da tarefa:
Desenhe um cubo na arte ASCII em aproximadamente uma projeção de gabinete.
Monospaced fonts
geralmente têm caracteres com o dobro da largura. Como a entrada é o comprimento das linhas verticais (excluindo os cantos), as linhas horizontais são desenhadas com o dobro de caracteres, para que a imagem resultante seja realmente um cubo. As linhas recuadas são desenhadas na metade do comprimento, conforme determinado por uma projeção do gabinete.
Os cantos do cubo são representados por +
, linhas horizontais por -
, linhas verticais por |
e diagonais /
.
Resumindo: Seja a entrada n , então
- Uma aresta horizontal do cubo é desenhada com
-
e consiste em 2 n caracteres. - Uma aresta vertical do cubo é desenhada com
|
e consiste em n caracteres. - Uma aresta diagonal do cubo é desenhada com
/
e consiste em n / 2 caracteres. - Os cantos do cubo são desenhados com
+
. Os cantos não são contados pelo comprimento de uma aresta, conforme detalhado acima (veja também os exemplos abaixo).
Entrada:
A entrada, dada na entrada padrão, é um único número positivo positivo n (2 ≤ n ≤ 30) que fornece o comprimento das linhas verticais do cubo. É seguido por uma única quebra de linha.
Saída:
A saída é um cubo na saída padrão, seguindo as regras acima. O espaço em branco à direita nas linhas é ignorado.
Entrada de amostra 1:
2
Saída de amostra 1:
+----+
/ /|
+----+ |
| | +
| |/
+----+
Entrada de amostra 2:
4
Saída de amostra 2:
+--------+
/ /|
/ / |
+--------+ |
| | |
| | +
| | /
| |/
+--------+
ETA: Agora aceitei a solução mais curta. Atualizarei a resposta aceita quando surgir uma resposta mais curta.
Como algumas pessoas perguntaram quanto tempo duraram as inscrições de nossos concorrentes:
227 - Python
240 - Perl
310 - C
315 - C
326 - VB.NET
459 - C
Assim como nossas próprias soluções (não classificadas com as outras):
140 - Golfscript
172 - Ruby
183 - PowerShell