Inspiré par ce défi
Objectif:
L'objectif est de dessiner des vagues qui s'écrasent sur une plage.
Contribution:
Vous recevrez 3 entiers (dans le format de votre choix) en entrée.
Le premier entier sera la longueur du dessin Le deuxième entier sera l'index du banc de sable, où les vagues commencent à crête (au moins 3 espaces de la plage)
Le troisième entier sera l'espacement entre les vagues (au moins 3, peut être supérieure à la longueur du dessin, auquel cas vous ne dessinez qu'une seule vague)
Production:
La sortie sera une boîte de caractères qui montre les vagues qui s'écrasent sur la plage. Le dessin devrait se terminer lorsque la première vague a fini de s'écraser sur la plage.
Au début, l'onde est représentée par une houle ( _-_
).
Lorsque la vague passe le banc de sable, elle commence à crêter ( /c_
).
Enfin, la vague s'écrase sur la plage ( /c.
=> _-_
=> ___
=> __.
).
Exemples:
Entrée: 14 4 6
Production:
-___________..
_-__________..
__-_________..
___-________..
___/c_______..
____/c______..
-____/c_____..
_-____/c____..
__-____/c___..
___-____/c__..
___/c____/c_..
____/c____/c..
-____/c____-_.
_-____/c_____.
__-____/c___..
Entrée: 10, 2, 11
Production:
-_______..
_-______..
_/c_____..
__/c____..
___/c___..
____/c__..
_____/c_..
______/c..
_______-_.
_________.
________..
Entrée: 6 0 3
c___..
/c__..
_/c_..
c_/c..
/c_-_.
_/c__.
c_/c..
Règles:
Les échappatoires standard s'appliquent
C'est le code-golf donc le code le plus court gagne
·
n'est pas ASCII, ce qui peut exclure certaines langues. Peut-il être remplacé par.
?·
place de la période ASCII? (C'est en fait une victoire assez importante dans mon code.)Réponses:
JavaScript (ES6),
250243 octetsCe code suppose la page de codes # 1252 et utilise le
·
caractère (0xB7). Prend l'entrée comme 3 paramètres distincts(a,b,c)
.Comment ça fonctionne
Ce code commence par une chaîne telle que
-______··
et applique des expressions régulières successives à chaque itération pour animer les vagues.Par exemple,
-__
est remplacé par_-_
.Au début, cela ressemblait à une idée raisonnable. Cependant, le fait que la chaîne puisse commencer par un
c
(comme dans le troisième cas de test) complique considérablement les choses.Cas de test
Afficher l'extrait de code
la source
Lot,
273243 octetsRemarque: l'espace de fin sur la ligne 4. Si seulement les deux caractères de plage étaient différents, je pourrais économiser 3 octets et battre réellement JavaScript!
la source