var QUESTION_ID=128104,OVERRIDE_USER=20260;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/128104/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SIZE}}",o.size).replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var SCORE_REG=/<h\d>\s*([^\n,]*[^\s,]),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/,OVERRIDE_REG=/^Override\s*header:\s*/i;
body{text-align:left!important}#answer-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"> <div id="answer-list"> <h2>Leaderboard</h2> <table class="answer-list"> <thead> <tr><td></td><td>Author</td><td>Language</td><td>Size</td></tr></thead> <tbody id="answers"> </tbody> </table> </div><div id="language-list"> <h2>Winners by Language</h2> <table class="language-list"> <thead> <tr><td>Language</td><td>User</td><td>Score</td></tr></thead> <tbody id="languages"> </tbody> </table> </div><table style="display: none"> <tbody id="answer-template"> <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table> <table style="display: none"> <tbody id="language-template"> <tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table>
Réponses:
Fusain , 23 octets
Essayez-le en ligne! Explication: imprime les lignes dans l'ordre suivant, puis reflète tout horizontalement:
la source
‖B
signifie "Reflect Butterfly"JavaScript (ES6),
144143140138134 octetsUne fonction récursive dessinant le caractère de sortie par caractère avec une expression purement conditionnelle.
Comment?
Pour chaque position 0 <p ≤ 363 , nous définissons:
Vous trouverez ci-dessous une ventilation de la formule qui choisit le caractère approprié
[ '\', '/', ' ', '_', '\n' ]
.Et ci-dessous sont les différentes parties du système de coordonnées défini ci-dessus:
Démo
Afficher l'extrait de code
la source
05AB1E , 50 octets
Essayez-le en ligne!
La compression:
La stratégie ici était de construire la moitié de l'objet, puis de refléter l'image à mi-chemin. Pour ce faire, j'ai d'abord construit la moitié gauche, avec un rembourrage avant:
Mais pas de remplissage à droite, car la
.B
fonction dans 05AB1E peut être utilisée pour rendre chaque élément de longueur égale en utilisant des espaces. Cela me permet d'omettre les espaces superflus à droite et de les délimiter simplement par des retours à la ligne. J'ai ensuite pris ce modèle et supprimé tous les sauts de ligne en les remplaçant par4
pour obtenir:Compresser cela avec la base-255 entraîne:
Où les deux
•
désignent une chaîne compressée en base 255 et 5B la convertit en base 5.La deuxième partie, après la compression:
la source
è
, bien sûr!V , 61 octets
Essayez-le en ligne!
Hexdump:
la source
Python 2 ,
226213 octets179 octetsMon premier golf!
Essayez-le en ligne!
J'ai essayé de boucler les bits sur lesquels je pouvais trouver un motif et j'ai codé en dur le reste. Définir les différents caractères sur une variable a permis d'économiser beaucoup d'octets.
Modifier: a décidé d'ajouter au même tableau au lieu de rejoindre plusieurs fois. Enregistré 13 octets.
Edit 2: Merci à @ValueInk, @jacoblaw, @WheatWizard, @CalculatorFeline et @ Challenger5, économisé 34 octets
la source
b,f,s,u='\/ _';o,a='/ /','\ \\'
économise 11 octets sur votre initialisation de variable actuelle! Voir icio
eta
ne sont utilisés qu'une seule fois dans le code. Le voici avec eux en ligne.0,1,2,3
au lieu derange(4)
pour enregistrer un octet.J , 155 octets
Essayez-le en ligne!
Il s'agit d'une fonction qui n'attend aucune entrée. Par exemple,
f =: <code>
alorsf ''
.Explication
J'ai codé cela en utilisant les étapes suivantes. Supposons que la chaîne de compression souhaitée soit contenue dans la variable
h
.Ensuite, nous avons juste besoin de décoder cela.
5#.inv 95x#.32-~3 u:
effectue l'inverse de ce que je viens de décrire, nous donnant la liste des indices. Ensuite,('_ /\',LF){~
applique les caractères appropriés à chaque index.la source
Mathematica, 227 octets
la source
Fusain ,
47 4341 octetsEssayez-le en ligne!
Je ne savais rien du charbon de bois jusqu'à présent, je me sentais comme "je n'ai aucune idée de ce que je fais" en essayant de trouver cette réponse ... Je suis sûr que cela peut être joué beaucoup.
Mises à jour:
la source
‖B
mais je n'ai pas pu comprendre comment ... belle réponse!Rubis, 117 octets
la source
Rétine ,
129114102 octetsMerci aux ovs pour -12 octets!
Essayez-le en ligne!
la source
05AB1E ,
928680 octetsEssayez-le en ligne!
Explication en parties
Le bar en haut
La ligne juste en dessous de la barre
Le reste de la partie supérieure de l'hexagone
Le reste sauf les 2 dernières lignes
L'avant-dernière ligne
La dernière ligne
À
»
la fin, tout rejoint sur les nouvelles lignes.la source
{_
devient{_{
, où avec le miroir il devient{_}
. Palendromize l'estû
, tandis que le miroir l'est∞
. Il y a aussi un miroir intersecté, qui l'est.∞
.C #,
210199 octetsEncode la longueur des exécutions d'espace et des soulignements:
Ungolfed:
Essayez-le en ligne!
la source
Rétine , 129 octets
Essayez-le en ligne! Approche complètement différente, mais par coïncidence la même longueur!
la source
/// , 152 octets
Essayez-le en ligne!
la source
MATL ,
5855 octetsEssayez-le en ligne!
la source
Pyth , 111 octets
Ce code imprime essentiellement les lignes les unes après les autres (de la manière naïve de le faire). Oui, ça craint, mais pour l'instant je ne suis pas en train de faire mieux, et moi aussi je voulais encore rendre hommage à HyperNeutrino .
Essayez-le en ligne!
la source
PHP , 122 octets
Essayez-le en ligne!
PHP , 158 octets
Essayez-le en ligne!
PHP , 165 octets
Essayez-le en ligne!
la source
SOGL V0.12 ,
5352 octetsEssayez-le ici!
la source
Python 2 , 187 octets
Essayez-le en ligne!
la source
C # (.NET Core) , 169 octets
Ungolfed:
Pour chaque trait, j'ai codé la position de départ, la longueur, le caractère utilisé et la direction dans diverses chaînes. J'ai économisé quelques octets en regroupant des traits similaires.
Malheureusement, cela imprime un peu bizarre in tio. C'est parce que je n'imprime pas de vrais espaces. Ça a l'air bien dans ma console, cependant. Donc, cette soumission ne compte probablement pas. Voici le lien de toute façon.
Essayez-le en ligne! (faux espaces 169 octets)
Essayez-le en ligne! (espaces réels 191 octets)
la source
Python 2 ,
154138 octetsEssayez-le en ligne!
la source
Pinceau , 43 octets, non concurrent
Explication
Tests bêta dans le monde réel:
Je dois faire beaucoup d'améliorations, hein. : P
la source
Bubblegum ,
6754 octetsEssayez-le en ligne!
la source
C (gcc) , 200 octets
Essayez-le en ligne!
la source