J'habite au Royaume-Uni, où il pleut. Beaucoup. J'ai aussi la malheureuse nécessité de devoir porter des lunettes pour voir, ce qui signifie que lorsqu'il pleut (comme c'est le cas actuellement), je peux à peine voir hors d'eux. Ce défi est pour que vous puissiez tous vivre la même chose!
Tâche
Sortie de verres d'art ASCII avec une goutte d'eau ajoutée chaque seconde.
Contribution
Aucun
Sortie
Une paire de verres avec des gouttes d'eau dessus.
Des lunettes
________________________
| /__\ |
| / \ |
| / \ |
\_______/ \_______/
Gouttes de pluie
Une goutte de pluie est désignée par un .
. Une goutte de pluie est placée au hasard sur les verres des lunettes. Donc, quand une goutte de pluie est placée, les lunettes peuvent ressembler à ceci
________________________
| /__\ |
| . / \ |
| / \ |
\_______/ \_______/
S'il est placé sur un espace vide ( ), un
.
est placé sur l'image. S'il est placé sur un carré qui a déjà une goutte de pluie, la goutte est graduée.
Les étapes sur les gouttes sont
- aucune goutte placée:
- 1 goutte placée:
.
- 2 gouttes placées:
o
- 3 gouttes déposées:
O
- 4+ gouttes placées:
@
Règles
- L'image doit avoir l' air de rester en place. Cela signifie que vous pouvez soit effacer l'écran, soit imprimer suffisamment de nouvelles lignes pour «effacer» l'écran. Vous ne pouvez pas retourner une liste d'étapes. Désolé pour cela, mais vous devriez pouvoir contourner cela.
- Lors de la sortie de sauts de ligne pour "effacer" l'écran, vous devez avoir au moins 3 sauts de ligne entre les lunettes.
- Le code s'exécute jusqu'à ce que les verres soient pleins de gouttes entièrement graduées, c'est-à-dire jusqu'à ce que la sortie ressemble à ceci:
________________________ | @@@@@@@@@@ / __ \ @@@@@@@@@@ | | | @@@@@@@@@ / \ @@@@@@@@@ | | @@@@@@@@ / \ @@@@@@@@ | \ _______ / \ _______ /
- Le code le plus court en octets gagne.
@
, non?Réponses:
JavaScript (ES6),
269267265 octetsEdit: sauvé
24 octets grâce à @Shaggy.la source
innerText
au lieu detextContent
etsearch
au lieu deindexOf
. Et un peu plus en utilisant simplement du<pre id=o
HTML, plutôt qu'en l' utilisantdocument.write
.Java 8,
449421 octetsExplication:
Essayez-le ici. (
Thread.sleep
est supprimé pour que vous puissiez voir instantanément le résultat.)Sortie:
REMARQUE: les points sont un peu bizarres dans le gif, mais c'est un problème dans mon ScreenToGif.exe ..
la source
"
) semblent vraiment qu'il y a une vraie goutte d'eau sur mon écranF #, non récursif
379414404 octetsEssayez-le en ligne!
J'adore la prémisse de ce défi :)
Et merci pour le ver de l'oreille.
F #,
406441438437423 octetsEssayez-le en ligne!
Explication
la source
open System
supprimantSystem
des appelsRandom()
etThreading.Thread.Sleep()
;)Python 2,
365328 octetsC'est un peu mieux ...
Essayez-le en ligne
Le lien ci-dessus utilise 30 lignes au lieu de 3, mais vous pouvez le voir avec 3 si vous redimensionnez la fenêtre de votre navigateur pour être suffisamment petite verticalement. Passez
time.sleep(1)
àtime.sleep(.1)
une vitesse 10x.la source
C,
313309305304 octetsDoit être un peu joué au golf;
Je l'exécute avec le talon de test suivant
la source
Rubis ,
237224228218206 206198197 octetsEssayez-le en ligne!
La réponse précédente était fausse, elle ne tenait pas compte d'une goutte de pluie tombant sur un @.Apparemment pas une exigence. Quelques octets enregistrés.Cela se termine avec une erreur lancée, mais cela se termine définitivement dès que les verres pleins sont imprimés.
mettant l'impression dans un lambda et enchangeant l'affectation pour utiliser tr (duh)\\
bea
, puis en revenant à l'intérieur du trx
(duh). Dans le cas où certains d'entre vous se demandent pourquoi cela n'affecte pas la boucle principale: la boucle principale ne prend pas en compte la dernière ligne pour la déterminerx
.bout de la lunette
Oui <200 octets: D
Gif:
la source
Bash,
576510429416 octetsWow, j'ai beaucoup joué au golf. Si quelqu'un a une idée de golf, je suis ouvert aux suggestions
Essayez-le vous-même! Il a commenté le sommeil en raison de la limite de 60 secondes
Voici le gif:
la source
Perl, 167 octets
Notez qu'il
\x1b
s'agit d'un caractère d'échappement littéral.Voyez-le en ligne!
la source
Mathematica, 438 octets
voici un gif de résultat de vitesse 10x
la source
Table
,95
et32
?t=Table
x = 32
ety = 95
?Flatten
parf
?PHP,
262254 octetsCourez avec
-nR
ou essayez-le en ligne .panne
la source