var QUESTION_ID=142243,OVERRIDE_USER=8478;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){var F=function(a){return a.lang.replace(/<\/?a.*?>/g,"").toLowerCase()},el=F(e),sl=F(s);return el>sl?1:el<sl?-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:
Gelée ,
18 17 1514 octetsUn lien monadique prenant un numéro et renvoyant un personnage.
Essayez-le en ligne! ou voir toutes les paires entrée-sortie .
Comment?
la source
Javascript (ES6), 51 octets
Solutions alternatives (plus longues):
5352 octets (-1 octet grâce à @Arnauld)5553 octets (-2 octets grâce à @Neil)55 octets
Exemple d'extrait de code:
la source
n=>"AFEDCB"[[14,171,181,295,301].findIndex(m=>n<m)+1]
n=>'FEDCBA'[n>300?5:n>294?4:n>180?3:n>170?2:+(n>13)]
TI-Basic, 40 octets
la source
J , 31 octets
Essayez-le en ligne!
Explication
la source
I.
à l'état sauvage. Soigné.Python 3 , 50 octets
Merci à @jferard pour -4 octets.
Essayez-le en ligne!
Python 3 , 54 octets
Essayez-le en ligne!
Enregistré 2 octets grâce à @mathmandan, et indirectement grâce à @JonathanFrech.
Python 2 , 56 octets
Essayez-le en ligne!
la source
lambda n:chr(70-sum(n>x for x in[13,170,180,294,300]))
. (Voir la réponse de @Jonathan Frech à codegolf.stackexchange.com/a/142244/36885 )->n{(70-"ĬĦ´ª\r".chars.count{|i|n>i.ord}).chr}
même tailleC,
6261 octetsMerci à @Jonathan Frech d'avoir enregistré un octet!
Essayez-le en ligne!
C, 57 octets
Essayez-le en ligne!
C (gcc), 54 octets
Essayez-le en ligne!
C (gcc), 50 octets
Utilisation de la solution de @Herman Lauenstein .
Essayez-le en ligne!
la source
Kotlin , 56 octets
Essayez-le en ligne!
Embellie
Tester
la source
Japt ,
2321 octetsEssayez-le
Explantion
Saisie implicite d'entier
U
.Soustraire des points de code de la chaîne (un seul caractère)
G
...Le nombre d'éléments inférieur à
U
...Dans le tableau de 170 (
#ª
), 0 (T
), 180 (#´
), 13 (D
), 294 (littéral) et 300 (L*3
), donc formatés et ordonnés pour éviter l'utilisation de virgules de délimitation.0
pourrait être supprimé (en soustrayant du point de code de laF
place) mais alors une virgule devrait être ajoutée ouC*F
(12 * 15) utilisée pour180
, en fin de compte, aucun octet.la source
R ,
5044 octetsEssayez-le en ligne!
identique à la réponse javascript, mais utilise la vectorisation de R et le LETTERS intégré pour venir un tout petit peu plus court.
Merci à rturnbull d' avoir rasé ces 6 derniers octets.
la source
cat
sinon l'utilisersource(program,ec=T)
et compterec=T
comme indicateur (selon le méta-consensus sur les programmes R), mais par un autre méta-consensus plus récent, nous ne comptons aucun indicateur" plus longtemps, donc c'est une solution parfaitement valable.Python 2 , 77 octets
Essayez-le en ligne!
la source
Recursiva ,
4930 octetsEssayez-le en ligne!
Permettez-moi de répondre à ma propre question dans ma propre langue. :RÉ
Explication:
la source
Perl 5 , 47 + 1 (-p) = 48 octets
Essayez-le en ligne!
la source
Pyke , 28 octets
Essayez-le ici!
Explication
la source
Gelée , 19 octets
Essayez-le en ligne!
Le pied de page exécute tous les cas de test et formate la sortie.
la source
Pyth, 30 octets
Le site ne semble pas montrer le caractère avec le point de code 1, vous devez donc insérer un caractère avec le point de code 1 avant
&
,,
etm
à la fin(Remplacez tous les
1
s par un caractère avec le point de code 1):la source
Pyth , 25
26octetsVérifiez tous les cas de test.
Explication
la source
Ly , 74 octets
Essayez-le en ligne!
Une approche simple si-chaîne. Je doute que cela puisse être beaucoup plus court.
la source
(...)
nécessaires? PS nvm, apparemment ils le sont.Bash , 55 octets
Essayez-le en ligne ou vérifiez les cas de test .
la source
Java 8, 55 octets
Essayez-le ici.
Alternative 57 octets :
Essayez-le ici.
Alternative 60 octets :
Essayez-le ici.
Peut-être qu'une sorte de formule peut être trouvée pour obtenir 0-5 d'une manière plus courte que l'
n<14?0:n<171?1:n<181?2:n<295?3:n<301?4:5
utilisation de la dernière approche. Toujours en train d'enquêter.la source
PowerShell , 59 octets
Essayez-le en ligne!
Similaire à la réponse Jelly de Jonathan Allen, en ce sens que nous construisons un tableau de toutes les lettres concaténées ensemble, puis indexons dans ce tableau avec l'entrée
$args
.la source
Lapin ~ , 50 octets
(Question non concurrente, postdate. Je viens de terminer l'interprète (yay) et je voulais essayer de résoudre quelque chose. C'est aussi ma première chose de golf de code jamais)
Il prend essentiellement les différences d'une année à l'autre 14,157,10,114,6,65 (codé comme
ỤṅỌrḲA
) et soustrait de l'entrée. Si un nombre négatif est trouvé, il cesse de progresser le long de la séquence «FEDCBA» et sort la lettre.Petite explication de ce beau morceau de syntaxe
Rabbit ~ utilise une mémoire basée sur une grille avec un ou plusieurs carets que vous pouvez déplacer; cette solution utilise 2.
la source
Excel, 53 octets
Somme des conditions, puis retourne le caractère ASCII requis:
Solutions alternatives:
Conditions de sommation, retourne l'index de chaîne (63 octets):
la source
K (oK) , 30 octets
Solution:
Essayez-le en ligne!
Explication:
Index dans le bon compartiment:
la source
Jotlin ,
4841 octetsProgramme complet:
Porté ma précédente réponse Kotlin ici .
la source
V ,
3734 octetsEssayez-le en ligne!
Hexdump:
Idée basique:
FEDCBA
, créez 5 copies de B, 113 copies de C etc. résultant en la chaîneFFFFFFFFFFFFFEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDDDDDDDDDCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBBBBBA
(Il existe probablement un moyen plus efficace de le faire)n
la colonne (n
c'est le premier argument), copiez un seul caractère et remplacez-y la chaîne entière.la source
05AB1E , 19 octets
Essayez-le en ligne!
la source
Perl 6,
4239 octetsla source
Stax , 18 octets
Exécutez et déboguez en ligne!
Explication
Octets comptés dans CP437.
la source
C #, 110 octets
Essayez-le en ligne
la source
?:
commex<14?"F":x<170?"E":x<180?"D":x<294?"C":x<300?"B":"A"