Un meme Internet actuel est de taper 2spooky4me, avec une deuxième personne en tapant 3spooky5me, en suivant le (n)spooky(n+2)me
modèle.
Votre mission est d'implémenter ce modèle dans la langue de votre choix. Vous devez écrire un programme ou une fonction qui prend une valeur n
(de l'entrée standard, en tant qu'argument de fonction ou de la variante la plus proche) et génère la chaîne (n)spooky(n+2)me
(sans les parenthèses; sur la sortie standard, en tant que valeur de retour pour une fonction ou la solution de remplacement la plus proche. ).
Votre solution doit fonctionner pour toutes les entrées, 1
jusqu'à 2 en dessous de la valeur entière représentable de votre langue ( 2^32-3
pour C sur un ordinateur 32 bits, par exemple).
Exemple d'implémentation en Python:
def spooky(n):
return "%dspooky%dme"%(n,n+2)
spooky(2) -> "2spooky4me"
C'est du code-golf , donc les échappatoires standard sont interdites et la réponse la plus courte en octets l'emporte!
Classement
Le fragment de pile au bas de cet article génère le classement à partir des réponses a) sous forme de liste des solutions les plus courtes par langue et b) sous forme de classement global.
Pour vous assurer que votre réponse apparaît, commencez votre réponse par un titre, en utilisant le modèle Markdown suivant:
## Language Name, N bytes
où N
est la taille de votre soumission. Si vous améliorez votre score, vous pouvez conserver les anciens scores en les effaçant. Par exemple:
## Ruby, <s>104</s> <s>101</s> 96 bytes
Si vous souhaitez inclure plusieurs numéros dans votre en-tête (par exemple, parce que votre score est la somme de deux fichiers ou si vous souhaitez répertorier séparément les pénalités d'indicateur d'interprétation), assurez-vous que le score réel est le dernier numéro de l'en-tête:
## Perl, 43 + 2 (-p flag) = 45 bytes
Vous pouvez également faire du nom de la langue un lien qui apparaîtra ensuite dans l'extrait de code:
## [><>](http://esolangs.org/wiki/Fish), 121 bytes
<style>body { text-align: left !important} #answer-list { padding: 10px; width: 290px; float: left; } #language-list { padding: 10px; width: 290px; float: left; } table thead { font-weight: bold; } table td { padding: 5px; }</style><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="language-list"> <h2>Shortest Solution 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> <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> <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><script>var QUESTION_ID = 62350; var ANSWER_FILTER = "!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe"; var COMMENT_FILTER = "!)Q2B_A2kjfAiU78X(md6BoYk"; var OVERRIDE_USER = 45941; var answers = [], answers_hash, answer_ids, answer_page = 1, more_answers = true, comment_page; function answersUrl(index) { return "https://api.stackexchange.com/2.2/questions/" + QUESTION_ID + "/answers?page=" + index + "&pagesize=100&order=desc&sort=creation&site=codegolf&filter=" + ANSWER_FILTER; } function commentUrl(index, answers) { return "https://api.stackexchange.com/2.2/answers/" + answers.join(';') + "/comments?page=" + index + "&pagesize=100&order=desc&sort=creation&site=codegolf&filter=" + COMMENT_FILTER; } function getAnswers() { jQuery.ajax({ url: answersUrl(answer_page++), method: "get", dataType: "jsonp", crossDomain: true, success: function (data) { answers.push.apply(answers, data.items); answers_hash = []; answer_ids = []; data.items.forEach(function(a) { a.comments = []; var id = +a.share_link.match(/\d+/); answer_ids.push(id); answers_hash[id] = a; }); if (!data.has_more) more_answers = false; comment_page = 1; getComments(); } }); } function getComments() { jQuery.ajax({ url: commentUrl(comment_page++, answer_ids), method: "get", dataType: "jsonp", crossDomain: true, success: function (data) { data.items.forEach(function(c) { if (c.owner.user_id === OVERRIDE_USER) answers_hash[c.post_id].comments.push(c); }); if (data.has_more) getComments(); else if (more_answers) getAnswers(); else process(); } }); } getAnswers(); var SCORE_REG = /<h\d>\s*([^\n,<]*(?:<(?:[^\n>]*>[^\n<]*<\/[^\n>]*>)[^\n,<]*)*),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/; var OVERRIDE_REG = /^Override\s*header:\s*/i; function getAuthorName(a) { return a.owner.display_name; } function process() { var valid = []; answers.forEach(function(a) { var body = a.body; a.comments.forEach(function(c) { if(OVERRIDE_REG.test(c.body)) body = '<h1>' + c.body.replace(OVERRIDE_REG, '') + '</h1>'; }); var match = body.match(SCORE_REG); if (match) valid.push({ user: getAuthorName(a), size: +match[2], language: match[1], link: a.share_link, }); else console.log(body); }); valid.sort(function (a, b) { var aB = a.size, bB = b.size; return aB - bB }); var languages = {}; var place = 1; var lastSize = null; var lastPlace = 1; valid.forEach(function (a) { if (a.size != lastSize) lastPlace = place; lastSize = a.size; ++place; var answer = jQuery("#answer-template").html(); answer = answer.replace("{{PLACE}}", lastPlace + ".") .replace("{{NAME}}", a.user) .replace("{{LANGUAGE}}", a.language) .replace("{{SIZE}}", a.size) .replace("{{LINK}}", a.link); answer = jQuery(answer); jQuery("#answers").append(answer); var lang = a.language; lang = jQuery('<a>'+lang+'</a>').text(); languages[lang] = languages[lang] || {lang: a.language, lang_raw: lang.toLowerCase(), user: a.user, size: a.size, link: a.link}; }); var langs = []; for (var lang in languages) if (languages.hasOwnProperty(lang)) langs.push(languages[lang]); langs.sort(function (a, b) { if (a.lang_raw > b.lang_raw) return 1; if (a.lang_raw < b.lang_raw) return -1; return 0; }); for (var i = 0; i < langs.length; ++i) { var language = jQuery("#language-template").html(); var lang = langs[i]; language = language.replace("{{LANGUAGE}}", lang.lang) .replace("{{NAME}}", lang.user) .replace("{{SIZE}}", lang.size) .replace("{{LINK}}", lang.link); language = jQuery(language); jQuery("#languages").append(language); } }</script>
%dspooky%dme
, validez et revenez ensuite en série.Réponses:
gs2, 15 octets
J'ai gommé Dennis!
CP437:
Décharge Hex:
Au début du programme, STDIN est poussé (par exemple, la chaîne de caractères
"3"
) et stocké dans une variableA
. Les dix premiers octets du programme poussent deux chaînes"spooky"
et"me"
, dans la pile. Ensuite:d0
pousse variableA
.56
le analyse comme un nombre.12
30
l'incrémente de deux.42
échange les deux premiers éléments de la pile en partant"3" "spooky" 5 "me"
.La pile finale est imprimée comme
3spooky5me
.la source
GS2, 17 octets
JE NE PEUX PAS OUTGOLF DENNIS HELP
la source
Coincé, 17 octets
EDIT: suppose que vous pourriez dire que je suis coincé à 17 octets
la source
GolfScript, 17 octets
Essayez-le en ligne sur Web GolfScript .
Comment ça marche
la source
CJam, 18 octets
Essayez-le en ligne.
la source
Pyth - 17 octets
Essayez-le en ligne ici .
la source
Chef, 414 octets
Une recette pour un désastre. N'essayez pas ceci à la maison.
la source
TeaScript, 18 octets
Malheureusement, cette chaîne ne peut pas être compressée, elle est donc aussi courte que possible.
la source
Pip, 18 octets
On dirait que je suis dans le deuxième niveau de langues de golf ici. : ^ P
Prend le nombre en tant qu'argument de ligne de commande et place les éléments appropriés dans un tableau, qui est réuni et imprimé automatiquement à la fin du programme.
la source
dc, 20 octets
la source
Japt,
1716 octetsJapt ( Ja vascri pt abrégé) est une langue de mon invention. C'est plus récent que ce défi; ainsi, cette réponse est non concurrente. Contrairement à mes sept autres langues non publiées, celle-ci a un interprète qui est en cours de développement et qui fonctionne déjà partiellement.
Je voulais poster parce que j'aime la façon dont il est la même longueur que tous les existants de
première placeréponses deuxième place. Voici comment cela fonctionne:Et voila. Les spécifications de toutes les fonctionnalités utilisées ici ont été finalisées le 29 octobre; rien n'a été changé pour raccourcir cette réponse. Voici l' interprète , comme promis.
la source
{U}2me
au lieu de{U+2}me
: PGol> <> , 21 octets
Je suppose que je suis… à égalité avec Perl? Essayez-le en ligne .
la source
Vitsy, 21 octets
Remarque: la
Z
commande a été faite après le début de ce défi, mais n'était pas faite pour ce défi.Variation plus spoopy utilisant plusieurs piles (27 octets):
Essayez-le en ligne!
la source
Julia, 23 octets
Cela crée une fonction lambda sans nom qui accepte un entier et renvoie une chaîne. La sortie est construite à l'aide de l'interpolation de chaînes de Julia.
la source
Ruby, 25 octets
Cela crée un lambda sans nom qui accepte un entier et retourne une chaîne. La chaîne est construite à l'aide de l'interpolation de chaîne de Ruby.
la source
APL,
2522 octetsCela crée un train de fonctions monadique non nommé qui accepte un entier à gauche et renvoie une chaîne.
Les valeurs numériques sont converties en chaînes à l'aide de
⍕
. Le tableau de chaînes est joint en une seule chaîne à l'aide de∊
.Essayez-le en ligne
3 octets sauvés grâce à Thomas Kwa!
la source
Javascript (ES6)
2321 octetsUne fonction simple qui sera écrasée par les jeux de golf:
Un merci spécial à ETHproductions pour avoir économisé 2 octets
la source
_=>_+`spooky${_+2}me`
05AB1E,
14 à10 octetsEssayez-le en ligne.
Non compétitif depuis 05AB1E est plus récent que ce défi.
Explication
la source
D
supprimé pour 9 octetsPHP,
5547464234 octetsAccepte le numéro en tant qu'entrée de ligne de commande.
Crédits :)
Merci à manatwork pour avoir économisé 4 octets!
Merci à insertusernamehere pour la sauvegarde de 8 octets!
la source
function a($a){echo$a,"spooky",$a+2,"me";}
"
s. Vous pouvez même sauver 4 octets de plus en prenant un argument de ligne de commande et jeter la fonction, comme ceci:<?=($a=$argv[1]).spooky.($a+2).me;
.Chaîne , 15 octets
question non concurrentielle, langue postdates
Sortie implicite.
la source
Python, 31 octets
Demande et tu recevras.
la source
lambda n:f'{n}spooky{n+2}me'
pour 28 octets.Simplex v.0.7 , 20 octets
Simplex ne se sent tout simplement pas gaie aujourd'hui. > _ <
la source
C, 58 octets
atoi()
peut être inutile.la source
gcc
, parce que cela dépend de l'ordre d'évaluation. 2. Enregistrez un octet avecint**b
.Mathematica,
4527 octetsg=ToString[#]<>"spooky"<>ToString[#+2]<>"me"&
Merci à Martin Büttner pour l’amélioration significative (et l’accueil chaleureux).
la source
g=
et celaPrint[#,"spooky",#+2,"me"]&
devrait également fonctionner. :)Row@{#,spooky,#+2,me}&
? La sortie est visuellement similaire si les variables ne sont pas définies.Minkolang 0,10 , 49 octets
Je n'ai aucun moyen de convertir des entiers en chaînes (encore!), Donc c'est beaucoup plus long.
Essayez ici.
Explication
(dl%"0"+$rl:d)
fait le travail de convertir un int en une chaîne. Si cela était remplacé par un seul caractère (commeZ
), alors ma solution ne serait que 23 octets .nd
prend un entier de l'entrée et le duplique.2+
ajoute 2 et,2g
plus tard, obtient l’entrée initiale et la place au sommet de la pile.$O.
sort la pile entière en tant qu'entiers et arrêts.la source
Lua pour Windows, 41 octets
test avec lua pour windows
il prend l’entrée par io.read puis stocké dans la variable n puis sur la même ligne imprime la variable n puis "spooky" puis n + 2 enfin elle affiche "moi"
la source
n=io.read()print(n.."spooky"..n+2.."me")
2.
ils seront traités comme un nombre.print(.....'spooky'.. ...+2 ..'me')
Comment exécuter:lua51.exe p.lua 2
Taille = 35 octets.Rotor, 15 octets
La langue a été créée après le défi. Ne fonctionne pas dans l'interpréteur en ligne (utilise eval d'entrée)
la source
Cookie , 16 octets (non concurrents)
Notez que les modifications récentes apportées à la page Github n'ont pas été apportées pour ce défi, Cookie est toujours en développement.
Explication:
la source
Gelée, non en compétition
13 octets Cette réponse est sans concurrence, car le défi était antérieur à la création de Jelly.
JE NE PEUX PAS OUTGOLF QUARTATA HELP
Essayez-le en ligne!
Comment ça marche
la source
+2ṭż“×¥X“ŀ`»
Perl 5 ,
2019 octetsLe code nécessite le
-p
commutateur. Merci à @Xcali pour le golf d'un octet!Essayez-le en ligne!
la source