var QUESTION_ID=141725,OVERRIDE_USER=61563;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/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:
05AB1E , 7 octets
Code:
Utilise le codage 05AB1E . Essayez-le en ligne!
Explication
la source
žp
existe- t- il quandAu
est d'or? BADUM tissssR ,
6755 octetsEssayez-le en ligne!
la source
sep
às
. Les fonctions rempliront automatiquement les arguments nommés s'il n'y a pas de collision...
argument; les arguments qui viennent avant...
(généralement) ont une correspondance partielle, et ceux qui suivent ne le font pas. Je crois qu'il y a quelques exceptions, maiscat
n'en est pas une...
Python 2 , 57 octets
Essayez-le en ligne!
la source
V ,
13, 11 octetsEssayez-le en ligne!
Hexdump:
Écrit depuis mon téléphone: P.
la source
PowerShell , 42 octets
Essayez-le en ligne!
Explication:
la source
Bash + GNU sed, 60
Essayez-le en ligne .
la source
:x
à:
ettx
àt
./// ,
10597 octetsEssayez-le en ligne!
Explication
/// ne connait qu'une commande,
/<pattern>/<substitution>/<text>
remplace toutes les occurrences de<pattern>
in<text>
avec<substitution>
. En outre,\
peut être utilisé pour échapper des caractères.Code raccourci pour plus de simplicité:
La première commande
/:/\\\\*/
remplace:
par\\*
dans le code suivant. Cela donne:Puis
/#/\\*E\\*D\\*C\\*B\\*A/
remplace#
par\*E\*D\*C\*B\*A
:Puis
/\\*/\/\/__\*E\*D\*C\*B\*A<newline>\/ /
remplace\*
par//__*E*D*C*B*A<newline>/
:Remarque: je devais utiliser
\*
pour le remplacement. Comme*
fait également partie de la substitution, cela générerait une boucle infinie si je ne fais que remplacer*
.Ensuite, la commande
/_/ /
remplace_
par des espaces et/*//
supprime tous les éléments suivants*
:La commande suivante ne
/#//
remplace#
rien. Comme il n'y a pas#
de code, cela ne fait rien. Ceci est juste ici pour supprimer les deux lignes//
de début du code. Cela laisseEnsuite, la commande
/ E//
supprime<space>E
, donc cela laissera le codeSimilaire
/ D//
supprime<space>D
:/ C//
:/ B//
:Et la dernière commande est incomplète, donc elle ne fait rien:
la source
Haskell,
5352 octetsEssayez-le en ligne!
Comment ça fonctionne
la source
f['Z'..'A']
fonctionne pas ?[a..b]
commence para
et collecte tous les successeurs (+1
pour les entiers, le prochain caractère pour les caractères, etc.) jusqu'àb
. Sia > b
c'est une liste vide. Cependant, vous pouvez également spécifier la deuxième valeur (qui peut être plus petite) à partir de laquelle un incrément / décrément est calculé.[1,3..8]
->[1,3,5,7]
,[15,10..0]
->[15,10,5,0]
, ou['Z','Y'..'A']
qui est l'alphabet majuscule arrière.Python 2 ,
6664Essayez-le en ligne!
la source
print
et'
pour 65 octets.JavaScript (ES6),
837776 octetsla source
Gelée , 12 octets
Essayez-le en ligne!
-3 octets grâce aux miles
la source
brainfuck , 105 octets
Essayez-le en ligne!
Minified et formaté:
Version lisible:
la source
Octave ,
53494645 octets1 octet supprimé grâce à @Sanchises
Essayez-le en ligne!
la source
Poétique , 601 octets
Poetic est un esolang que j'ai créé en 2018 pour un projet de classe. Il s'agit d'un dérivé du brainfuck dans lequel les longueurs de mots correspondent aux commandes brainfuck (et les commandes +, -,> et <ont chacune un argument à 1 chiffre).
Le fait que seule la longueur du mot dicte les commandes signifie que techniquement, j’aurais pu créer un programme entièrement composé de non-mots (c.-à-d. La lettre X autant de fois que nécessaire, avec des espaces entre les mots), mais j’ai voulu créer un programme intéressant. un poème en vers libre qui n’ajoute pas d’octets inutiles.
Si vous voulez l'essayer en ligne (ce qui est la moitié du projet de classe en premier lieu), consultez mon interprète en ligne !
la source
05AB1E , 10 octets
Essayez-le en ligne!
Explications:
la source
Perl 6 , 37 octets
Sauvegardé 9 octets grâce à @Massa.
Essayez-le en ligne!
Explication:
25...0
est une plage de 25 à 0 (comme prévu). Nous parcourons cette plage en disant (= en imprimant avec une nouvelle ligne) que de nombreux espaces et la chaîne de caractères contenant des codes ASCII (chrs
) à partir de 65 + ce nombre ($_+65...65
).la source
25...0
est le moyen le plus court :-)say " "x$_,chrs $_+65...65 for 25...0
:-)Charbon de bois ,
19 à11 octets-8 octets grâce à ASCII uniquement.
Essayez-le en ligne! Le lien est vers la version commentée.
la source
CycleChop
... mais vous avez oubliéIncrement
(ou peu importePerl 5 , 36 octets
Code de 35 octets + 1 pour
-p
.Remarque : TIO ne prend pas en charge les entrées vides . Une nouvelle ligne est fournie. Il en résulte une nouvelle ligne, mais si vous utilisez une ligne de commande avec une entrée vide, cela n'apparaît pas .
Essayez-le en ligne!
la source
Ruby ,
5452 octetsEssayez-le en ligne!
la source
Cubix , 43
46octetsEssayez-le en ligne!
Cubifié
Regarde le courir
J'ai réussi à en réduire un peu plus, mais c'était un peu plus difficile que je ne le pensais. Il y a un personnage de remplacement après la première citation pour me donner 26.
'<sub>
poussez 26 sur la pile comme numéro de base:(!
dupliquer la base comme un compteur, décrémenter, tester la véritéu
sur true, passez la$
commande et tournez à droiteSo;u
poussez 32, affichez le caractère, sautez 32 et tournez à droite sur le décrément$
sur faux saut lau
commande suivante;:'@^
pop, dupliquez le numéro de base, mettez 64 sur la pile et redirigez-vous vers un itinéraire tortueux$\s/:\/u;$
c'est l'ordre des étapes sur la face supérieure. Cela revient à échanger le compteur avec le 64. Se termine par un saut sur la redirection qui le met ici.<+o;U
rediriger pour ajouter, caractère de sortie, pop, demi-tour à gauche(!
décrémentez, testez la vérité. Si true commence sur un chemin qui fait demi-tour et revient à la redirection.|(;No
sur false, reflect, test redondant, décrément redondant, pop, push 10 et caractère de sortie;;(u!@W
sautez jusqu'au nombre de base, décrémentez, tournez à droite sur le test de vérité, arrêtez-vous si false sinon changez de voie sur la copie au début. Rincer et répéter.la source
Python, 83 octets
Ma première réponse sur codegolf :)
la source
sed 4.2.2 + Bash , 50 octets
Essayez-le en ligne!
Bash + sed 4.2.2 , 51 octets
S'appuyant sur la réponse de @ DigitalTrauma .
Essayez-le en ligne!
la source
Vim, 43 frappes
Vous pouvez le voir en action dans ce GIF créé à l'aide du script python de Lynn
la source
JavaScript,
7574 octets1 octet économisé grâce à Rick Hitchcock
Essayez-le en ligne!
la source
b
(b=''
), puis enb
supprimant les crochets.Perl 5 , 49 octets
Essayez-le en ligne!
la source
A
, mais semble que cela puisse être corrigé en passant$"x25
à$"x26
!Z
, j'ai oublié de rendre compte de cela.Pyke , 8 octets
Essayez-le ici!
Je peux voir le bon langage faire cela dans 6 octets si ils avaient un construit pour
prepend n spaces to string
ainsi que ce que fait Pykela source
PHP (
635855 octets)C'est peut-être mon étrange coin préféré de PHP, un coin hérité de Perl:
Ceci sort la nouvelle ligne de fin, comme cela est explicitement autorisé. Ceci peut être exécuté
php -r
pour sauvegarder l’ouverture<?php
nécessaire pour le mettre dans un fichier.Explication: lorsqu'une variable contenant la chaîne
'A'
est incrémentée en PHP, elle devient'B'
, puis,'C'
et ainsi de suite jusqu'à ce que le'Z'
devienne'AA'
. Il n'y a aucun chiffre avant'A'
de commencer dans cette algèbre écervelée, et l'opérateur de décrémentation ne permet pas d' annuler, donc nous gagnons l'inverser progressivement alphabet$z
(qui par défautNULL
qui quand il est concaténé avec une chaîne se comporte comme la chaîne vide - la il en va de même avec$s
et$q
). Les espaces sont accumulés dans$s
et la chaîne entière est accumulée dans la variable,$q
ce qui signifie que nous devons y faire écho à la fin.Merci à Titus pour avoir joué au golf avec mes accolades et m'avoir dit que je n'avais pas besoin de prendre de pénalité pour les drapeaux d'évaluation en ligne comme
-r
.la source
-r
est libre. Deux octets plus courts:for($c=A;$c!=AA;$q="$s$z\n$q",$s.=" ")$z=$c++.$z;echo$q;
-R
et ne-F
sont pas libres. Voir codegolf.meta.stackexchange.com/questions/2424/…$c<AA
.SOGL V0.12 ,
108 octetsEssayez-le ici!
la source
701 choose x
tentatives pour tout nombre entier x) mais une tentative approximative était de 450 octets: PCommon Lisp,
8482 octetsEssayez-le en ligne!
Deux octets en moins grâce à @ Ascii-only!
la source
Python 2 ,
7267 octetsEssayez-le en ligne!
la source