Un sculpteur est chargé de créer des sculptures de glaçons pour le nouveau musée du Groenland. Il a été donné des spécifications par son patron, qui se compose de deux nombres: [s, m] ou la taille et la fonte. La taille doit être un nombre impair. On lui a donné quelques photos de vrais glaçons:
vvvvv [5, 0]
vvv
v
vvvvvvv [7, 0]
vvvvv
vvv
v
vvvvvvv [7, 2]
vvvvv
vvvvvvv [7, 3]
vvv [3, 1]
Il a besoin d'un programme pour aider à dessiner. N'importe quelle langue autorisée. Le programme doit prendre en S et M, toute méthode d'entrée acceptable. Vous devez ensuite en imprimer une représentation artistique ascii.
S est le nombre de v
s sur la première couche. M est le nombre de couches découpées par le bas.
C'est du code-golf , donc comme d'habitude cette compétition est basée sur les octets . L'espace blanc compte pour le comptage d'octets. Le moins d'octets l'emporte.
Edit: vous n'obtiendrez jamais un ensemble de nombres qui ne dessine rien, par exemple [5, 3]. La vérification du code n'est cependant pas requise.
Réponses:
05AB1E , 11 octets
Essayez-le en ligne!
la source
V , 15 octets
Essayez-le en ligne!
Assez simple.
la source
05AB1E , 12 octets
Code:
Explication:
Utilise le encodage CP-1252 . Essayez-le en ligne!
la source
;-Ý·¹+'v×.c
permettrait d'économiser un octetMATL , 22 octets
Essayez-le en ligne!
Explication
la source
Gelée , 19 octets
TryItOnline!
Comment?
la source
J’
(la plage de longueur diminuée) aurait également le même effet, mais il n'y a pas de version réduite deJ
, etLḶ
c'est plutôt mignon :)Lot, 142 octets
la source
Rubis,
4644 octets2 octets économisés grâce à GB
la source
puts
n'a pas besoin de l'espace?v*(s-2*i)
utiliser?v*s;s-=2
Python,
7673 octetsEdit: 3 octets enregistrés grâce à @TuukkaX et @ Challenger5 (Merci!)
la source
print
, il y a un espace inutile :)lambda s,m:"\n".join([' '*(s/2-i/2)+'V'*i for i in range(s,m*2,-2)])
def f(s,m):
, en économisant deux octets.def f()
est 7lambda
est 7. avec la pointe de Challenger5, def est en fait plus court. du moins si c'est ce que vous vouliez dire je pense :)print
, il est donc 4 caractères plus court (lambda s,m:"\n".join(...)
), car leslambda
s ont fondamentalement un retour implicite.JavaScript (ES6), 57 octets
Génère une nouvelle ligne de fin. Si une nouvelle ligne de début est acceptable, alors pour 54 octets:
la source
Python 2, 63 octets
la source
Turtlèd , 53 octets
Essayez-le en ligne!
Explication:
la source
Java,
138137 octetsNon golfé:
Mise à jour: un octet et un corps de boucle ont disparu grâce à @ClaytonRamsey.
la source
C, 83 octets
Non golfé et utilisation:
la source
Pyth, 21 octets
Un programme qui prend l'entrée de
S
suivi deM
, séparé par des retours à la ligne et imprime le résultat.Suite de tests
Comment ça marche
la source