Non, pas le
^^vv<><>BA
genre d'oeufs de Pâques, de vrais oeufs de Pâques que nous peignons.
Voici un œuf (terriblement dessiné).
__
/ \
/ \
| |
\____/
A Pâques, nous les peignons avec des motifs. Comme ceux-ci:
__
/--\
/----\
|----|
\____/
__
/%%\
/%%%%\
|%%%%|
\____/
__
/~~\
/~~~~\
|~~~~|
\____/
Le défi
Étant donné un caractère (ascii imprimable) pour peindre l'œuf, imprimez l'œuf peint.
Exemples:
&:
__
/&&\
/&&&&\
|&&&&|
\____/
#:
__
/##\
/####\
|####|
\____/
Spécifications
- Les sauts de ligne / espaces sont autorisés.
Réponses:
Brain-Flak ,
270268266 + 1 = 267 octets+1 du
-c
drapeauEssayez-le en ligne!
J'allais écrire une explication, mais j'ai d'abord fait une sieste et oublié comment tout cela fonctionne. Votre supposition est aussi bonne que la mienne.
la source
Python 2, 62 octets
Super simple. Essayez-le en ligne .
-1 octet, merci à @ mbomb007
la source
Fusain ,
302616 octetsDeux octets économisés grâce à @Neil en remplissant après avoir fait la forme
Essayez-le en ligne!
Explication
Le programme fonctionne en créant d'abord la moitié droite de l'œuf, puis en la réfléchissant pour générer la moitié gauche.
la source
←_↘
peut être juste ,↓_
mais en fait , vous pouvez remplir une fois que vous réfléchissiez pour 16 octets:__↗¹←↑¹↖²↓_‖M←¤S
.¤
Gelée ,
2422 octetsEssayez-le en ligne!
Comment?
la source
ṃ
pour la plus longue explication d'un seul octet.Sed, 43 personnages
Exemple d'exécution:
la source
JavaScript (ES6),
534947 octetsJe suis sûr que je peux en tirer un peu plus - devoir m'échapper
\
m'ennuie.s=c+c
affectation de variable à l'intérieur du premier ensemble de{}
.c+=c
au lieu des=c+c
&s=s+s
, avec en partie merci à Neil qui a repéré cette amélioration en même temps que je la faisais.Peignez le vôtre!
Afficher l'extrait de code
la source
<pre><code>
art. Beau travail cependant.pre
.c+=c
?f=\n
partie pour le nombre d'octets. C'est uniquement pour que l'extrait s'exécute.Alice ,
5352 octets, non concurrenteMerci à Leo d'avoir économisé indirectement 1 octet.
Essayez-le en ligne!
Malheureusement, j'ai dû corriger un bogue avec
y
(translittération) pour que cela fonctionne, donc je l'ai marqué comme non concurrent.Explication
L'idée de base est de créer une chaîne de l'œuf mais avec
~
comme espace réservé pour deux copies de l'entrée. Cependant, les autres caractères de l'entrée ne sont pas particulièrement conviviaux pour les chaînes Alice, car ceux-ci ne peuvent pas contenir de sauts de ligne, et tous/\_|
auraient besoin d'être échappés (car ils sont traités comme des miroirs et des murs). Je peux donc économiser quelques octets en utilisant des espaces réservés pour ceux-ci également, puis en les translittérant. Les espaces réservés pour/\_|
sont.[^{
, qui sont simplement le caractère juste avant celui qu'ils représentent. Pour le saut de ligne que j'utilise}
.Maintenant, le code ... tout le programme peut être résolu en mode Ordinal car nous n'avons besoin que d'un traitement de chaîne et pas de traitement d'entiers. De plus, nous n'avons besoin d'aucun flux de contrôle conditionnel. L'ensemble du programme peut être exprimé de façon linéaire. La structure générale du programme est la suivante:
Dans un tel programme, l'IP rebondit de haut en bas dans la
...
section, n'exécutant d'abord que la moitié des caractères. Ensuite, les deux/
à la fin déplacent l'IP vers la droite d'une cellule, de sorte qu'au retour, il exécute l'autre moitié (rebondissant de nouveau de haut en bas) jusqu'à ce que@
le programme se termine enfin . Donc, si nous déplions la structure en zigzag drôle au milieu, le programme que nous exécutons ressemble vraiment à ceci:Passons par là:
la source
PowerShell ,
504948 octetsEssayez-le en ligne!
Remplacement de chaîne simple en chaîne littérale. Pas beaucoup de place pour le golf.
-1 octet grâce à HyperNeutrino; -1 octet grâce aux wubs
la source
Carotte , 34 octets, non concurrente
Non compétitif car je viens de corriger un bug avec l'interpréteur dans les espaces de tête non affichés.
Essayez-le en ligne ici .
Tout d'abord, nous sommes en mode curseur, où chaque personnage est poussé vers la "pile". Et enfin, la "pile" est imprimée en sortie.
En mode curseur,
#
pousse l'entrée, de sorte que les instances de#
sont fondamentalement remplacées par l'entrée (FYI#
est un programme cat à un octet).la source
SOGL V0.12 ,
211816 octetsEssayez-le ici!
L'ensemble du programme est le suivant compressé:
où
ŗ
est remplacé par l'entrée.13 octets fonctionne presque aussi, mais il fait des choses inutiles avec certaines entrées ..
la source
@,ŗ -@ŗ
05AB1E ,
343332 octetsEssayez-le en ligne!
Explication
la source
•jÀňiXƒÐ[Z•6B6ôvy5ÝJ"_ |/\"¹«‡,
pour 32, tout à fait différent cependant. Cela m'a truqué et m'a fait penser que je pouvais utiliser palindromize ... Merde le fait que())(
et/\\/
sont des palindromes.Python 3.6 , 53 octets
x
et renvoyant une chaîne..format()
- les{}
parties incluses de la chaîne f sont du code à évaluer.Cependant, je ne peux pas voir d'interprète en ligne pour Python 3.6.Essayez-le sur repl.it (dit 3.5 mais c'est 3.6)
la source
Retina 0.8.2 ,
4341 octets-2 octets grâce à Kevin Cruijssen
Essayez-le en ligne!
la source
Brainfuck -
257 octets181 octetsGolfed: Live version cliquez ici
Je ne suis pas un golfeur professionnel. Voici ma tentative pour autant que je me souvienne: D
Sortie:
Non golfé (+ commentaires):
la source
05AB1E ,
322926 octets (Merci à Emigna / Adnan)Essayez-le en ligne!
Version 29 octets (plus intelligent sans itération nécessaire en raison du codage des nouvelles lignes également):
05AB1E , 29 octets (Emigna)
Essayez-le en ligne 2!
Extension de 26 octets de la suggestion d'Emigna, en utilisant S pour séparer les caractères dans un tableau, puis a [b] pour interpoler chaque chiffre avec l'emplacement correspondant dans le tableau précédent. Il s'agit essentiellement d'une translittération élément par élément (intelligente).
05AB1E , 26 octets (Adnan)
Essayez-le en ligne 3!
la source
Sè
- sneaky sneaky ...Admigna
, je ne connais pas vraiment la langue sans vos deux exemples constants.PHP, 51 octets
PHP, 58 octets sans sauts de ligne physiques
exécuter cela avec
-R
option61 octets
la source
-R
n'est pas un paramètre, c'est une option.man php
appelle paramètre : «Il est également possible de traiter l'entrée standard ligne par ligne en utilisant le paramètre -R ou -F.»BF,
142140 octetsCeci est divisé en deux lignes pour plus de clarté; la nouvelle ligne n'est pas comptée.
Il est assez facile d'écrire ce genre de chose en BF, mais il n'est pas trivial d'optimiser l'ordre des cellules pour minimiser le mouvement. J'ai écrit un script de brute-forcer pour essayer toutes les combinaisons et trouver la plus courte, et je l'ai joué un peu pour tenir compte d'une opportunité de golf que je n'avais pas incluse dans le brute-forcer.
la source
brainfuck , 114 octets
Essayez-le en ligne!
J'ai utilisé BF Crunch ici pour trouver un moyen plus optimal de générer les personnages individuels.
la source
C (gcc) ,
958885 octetsMerci à Albert pour -7 octets
Merci aussi à plafondcat -3 octets
Essayez-le en ligne!
la source
*q
simplement l'imbriquez directement dans votre boucle for pour économiser 5 octets.char*s;f(c){for(s=" __\n /11\\\n/1111\\\n|1111|\n\\____/\n";*s;putchar(*s^49?*s:c),s++);}
*s
à l'intérieur de l'argument de déclaration de la boucle for:f(c){for(char*s=" __\n /11\\\n/1111\\\n|1111|\n\\____/\n";*s;putchar(*s^49?*s:c),s++);}
1
est49
en ASCII mais cela fait 2 octets, utilisez quelque chose avec une valeur de 0 à 9, par exemple le caractère de tabulation `` est une valeur ASCII9
.*s;f(c){for(s
place def(c){for(int*
SpecBAS - 70 octets
?
est un raccourci pour laPRINT
commande, et l'apostrophe déplace le curseur sur la ligne suivante.la source
Röda , 46 octets
Essayez-le en ligne!
la source
Python, 59 octets
la source
Lua, 66 octets
((([[#J'y suis arrivé]])))
la source
Rétine , 41 octets
Essayez-le en ligne!
la source
Japt , 35 octets
Essayez-le en ligne!
Solution de 41 octets:
Essayez-le en ligne!
la source
d
soit un octet plus court.[R], 65 octets
Assez peu spectaculaire, veuillez en trouver un plus court dans R ... C'est votre gsub de base
la source
C ++ 208 octets
En réponse aux commentaires: Ceci est une re-publication complète.
la source
C # , 56 octets
Golfé
Non golfé
Non lisible non lisible
Code complet
Communiqués
56 bytes
- Solution initiale.Remarques
Les résultats imprimés dans le lien fourni ne ressembleront pas à des faux, car la police utilisée n'est pas monospace.
la source
C (gcc) , 87 octets
printf sans stdio.h provoque des avertissements mais aucune erreur, permettant une compilation réussie.
Explication
Instruction Printf qui rassemble tout sur une seule ligne, formatant le caractère de décoration avec% c.
Essayez-le en ligne
la source
C (gcc) , 84 octets
Essayez-le en ligne!
la source