Um escultor tem a tarefa de criar esculturas de gelo para o novo museu na Groenlândia. Ele recebeu especificações de seu chefe, que consiste em dois números: [s, m] ou tamanho e fusão. O tamanho deve ser um número ímpar. Ele recebeu algumas fotos de pingentes de gelo de verdade:
vvvvv [5, 0]
vvv
v
vvvvvvv [7, 0]
vvvvv
vvv
v
vvvvvvv [7, 2]
vvvvv
vvvvvvv [7, 3]
vvv [3, 1]
Ele precisa de um programa para ajudar a desenhar. Qualquer idioma permitido. O programa precisa incluir S e M, qualquer método de entrada aceitável. Em seguida, você deve imprimir uma representação artística ascii.
S é quantos v
s estão na primeira camada. M é quantas camadas são cortadas a partir do fundo.
Isso é código-golfe , então, como de costume, essa competição é baseada em bytes . O espaço em branco conta para a contagem de bytes. Menos bytes ganham.
Edit: Você nunca receberá um conjunto de números que não atrai nada, por exemplo [5, 3]. No entanto, a verificação do código não é necessária.
Respostas:
05AB1E , 11 bytes
Experimente online!
fonte
V , 15 bytes
Experimente online!
Bastante direto.
fonte
05AB1E , 12 bytes
Código:
Explicação:
Usa a codificação CP-1252 . Experimente online!
fonte
;-Ý·¹+'v×.c
salvaria um byteMATL , 22 bytes
Experimente online!
Explicação
fonte
Geléia , 19 bytes
TryItOnline!
Quão?
fonte
J’
(gama de comprimento diminuído) também teria o mesmo efeito, mas não existe uma versão reduzida deJ
, eoLḶ
é tipo de bonito :)Lote, 142 bytes
fonte
Ruby,
4644 bytes2 bytes economizados graças ao GB
fonte
puts
não precisa do espaço em branco?v*(s-2*i)
usar?v*s;s-=2
Python,
7673 bytesEditar: salvou 3 bytes graças a @TuukkaX e @ Challenger5 (Obrigado!)
fonte
print
, há um espaço em branco inútil :)lambda s,m:"\n".join([' '*(s/2-i/2)+'V'*i for i in range(s,m*2,-2)])
def f(s,m):
, salvando dois bytes.def f()
é 7lambda
é 7. Com a dica do Challenger5, def é realmente mais curto. pelo menos, se é isso que você quis dizer como eu acho :)print
, por isso é 4 caracteres mais curto (lambda s,m:"\n".join(...)
), poislambda
s basicamente têm um retorno implícito.JavaScript (ES6), 57 bytes
Gera uma nova linha à direita. Se uma nova linha principal for aceitável, então para 54 bytes:
fonte
Python 2, 63 bytes
fonte
Turtlèd , 53 bytes
Experimente online!
Explicação:
fonte
Java,
138137 bytesUngolfed:
Atualização: Um corpo de byte e loop desapareceu graças a @ClaytonRamsey.
fonte
C, 83 bytes
Ungolfed e uso:
fonte
Pitão, 21 bytes
Um programa que recebe entrada
S
seguida porM
, separada por nova linha e imprime o resultado.Suíte de teste
Como funciona
fonte