Ein aktuelles Internet-Mem ist die Eingabe von 2spooky4me, wobei eine zweite Person 3spooky5me eingibt und dem (n)spooky(n+2)me
Muster folgt.
Ihre Mission ist es, dieses Muster in der von Ihnen gewählten Sprache zu implementieren. Sie sollten ein Programm oder eine Funktion schreiben, die einen Wert n
(von der Standardeingabe, als Funktionsargument oder als nächstgelegene Alternative) und die Zeichenfolge (n)spooky(n+2)me
(ohne Klammern) als Rückgabewert für eine Funktion oder als nächstgelegene Alternative an die Standardausgabe ausgibt ).
Ihre Lösung sollte für alle Eingaben funktionieren, von 1
bis zu 2 unter dem maximal darstellbaren Ganzzahlwert Ihrer Sprache ( 2^32-3
z. B. für C auf einem 32-Bit-Computer).
Beispielimplementierung in Python:
def spooky(n):
return "%dspooky%dme"%(n,n+2)
spooky(2) -> "2spooky4me"
Das ist Code-Golf , also sind Standard-Schlupflöcher verboten und die kürzeste Antwort in Bytes gewinnt!
Bestenliste
Das Stapel-Snippet am Ende dieses Beitrags generiert die Rangliste aus den Antworten a) als Liste der kürzesten Lösungen pro Sprache und b) als Gesamtrangliste.
Um sicherzustellen, dass Ihre Antwort angezeigt wird, beginnen Sie Ihre Antwort mit einer Überschrift. Verwenden Sie dazu die folgende Markdown-Vorlage:
## Language Name, N bytes
Wo N
ist die Größe Ihres Beitrags? Wenn Sie Ihren Score zu verbessern, Sie können alte Rechnungen in der Überschrift halten, indem man sich durch das Anschlagen. Zum Beispiel:
## Ruby, <s>104</s> <s>101</s> 96 bytes
Wenn Sie mehrere Zahlen in Ihre Kopfzeile aufnehmen möchten (z. B. weil Ihre Punktzahl die Summe von zwei Dateien ist oder wenn Sie die Strafen für Interpreter-Flags separat auflisten möchten), stellen Sie sicher, dass die tatsächliche Punktzahl die letzte Zahl in der Kopfzeile ist:
## Perl, 43 + 2 (-p flag) = 45 bytes
Sie können den Namen der Sprache auch als Link festlegen, der dann im Snippet angezeigt wird:
## [><>](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
, bestätigen Sie und kehren Sie als Nächstes in Serie zurück.Antworten:
gs2, 15 bytes
Ich habe Dennis übertroffen!
CP437:
Hex-Dump:
Zu Beginn des Programms wird STDIN gedrückt (zB der String
"3"
) und in Variable gespeichertA
. Die ersten zehn Bytes des Programms verschieben zwei Zeichenfolgen"spooky"
und"me"
in den Stapel. Dann:d0
drückt variabelA
.56
parst es als Zahl.12
30
erhöht es um zwei.42
tauscht die obersten zwei Elemente auf dem Stapel aus und verlässt sie"3" "spooky" 5 "me"
.Der letzte Stapel wird gedruckt als
3spooky5me
.quelle
GS2, 17 Bytes
DENNIS-HILFE KANN ICH NICHT AUSGOLFEN
quelle
Feststecken, 17 Bytes
EDIT: Ich glaube, Sie könnten sagen, ich stecke bei 17 Bytes fest
quelle
GolfScript, 17 Bytes
Probieren Sie es online im Web GolfScript aus .
Wie es funktioniert
quelle
CJam, 18 Bytes
Probieren Sie es online aus.
quelle
Pyth - 17 Bytes
Probieren Sie es hier online aus .
quelle
Chef, 414 Bytes
Ein Rezept für eine Katastrophe. Versuche das nicht Zuhause.
quelle
TeaScript, 18 Bytes
Leider kann diese Zeichenfolge nicht komprimiert werden, sodass sie im Grunde genommen so kurz wie möglich ist
quelle
Pip, 18 Bytes
Sieht so aus, als wäre ich hier in der zweiten Klasse der Golfsprachen. : ^ P
Nimmt die Zahl als Befehlszeilenargument und fügt die entsprechenden Elemente in ein Array ein, das zusammengefügt und am Ende des Programms automatisch gedruckt wird.
quelle
Gleichstrom, 20 Bytes
quelle
Japt,
1716 BytesJapt ( Ja vascri pt gekürzt) ist eine Sprache meiner Erfindung. Es ist neuer als diese Herausforderung; Somit ist diese Antwort nicht konkurrierend. Im Gegensatz zu meinen anderen sieben unveröffentlichten Sprachen verfügt diese über einen aktuellen Dolmetscher , der derzeit entwickelt wird und teilweise bereits funktioniert.
Ich wollte dies posten, weil es mir gefällt, wie lang alle vorhandenen Antworten auf den
ersten Platz und denzweiten Platz sind. So funktioniert das:Und da hast du es. Die Spezifikation für alle hier verwendeten Funktionen wurde am 29. Oktober fertiggestellt. nichts wurde geändert, um diese Antwort zu verkürzen. Hier ist der Dolmetscher , wie versprochen.
quelle
{U}2me
anstatt{U+2}me
: PGol> <> , 21 Bytes
Ich glaube, ich bin ... mit Perl verbunden? Probieren Sie es online aus .
quelle
Vitsy, 21 Bytes
Hinweis: Der
Z
Befehl wurde nach Beginn dieser Herausforderung erstellt, wurde jedoch nicht für diese Herausforderung erstellt.Mehr spoopy Variation mit mehreren Stapeln (27 Bytes):
Probieren Sie es online!
quelle
Julia, 23 Bytes
Dadurch wird eine unbenannte Lambda-Funktion erstellt, die eine Ganzzahl akzeptiert und eine Zeichenfolge zurückgibt. Die Ausgabe wird mithilfe von Julias String-Interpolation erstellt.
quelle
Ruby, 25 Bytes
Dadurch wird ein unbenanntes Lambda erstellt, das eine Ganzzahl akzeptiert und eine Zeichenfolge zurückgibt. Die Zeichenfolge wird mit Rubys Zeichenfolgeninterpolation erstellt.
quelle
APL,
2522 BytesDadurch wird ein unbenannter monadischer Funktionszug erstellt, der links eine Ganzzahl akzeptiert und eine Zeichenfolge zurückgibt.
Numerische Werte werden mithilfe von in Zeichenfolgen konvertiert
⍕
. Das Array von Zeichenfolgen wird mithilfe von zu einer einzelnen Zeichenfolge verbunden∊
.Probieren Sie es online aus
3 Bytes gespart dank Thomas Kwa!
quelle
Javascript (ES6)
2321 BytesEine einfache Funktion, die von Golfplätzen zerstört wird:
Besonderer Dank geht an ETHproductions für die Einsparung von 2 Bytes
quelle
_=>_+`spooky${_+2}me`
05AB1E,
1410 BytesProbieren Sie es online aus.
Die Konkurrenzlosigkeit seit 05AB1E ist neuer als diese Herausforderung.
Erläuterung
quelle
D
für 9 Bytes entfernt zu funktionierenPHP,
5547464234 BytesÜbernimmt die Nummer als Kommandozeilen-Eingabe.
Credits :)
Danke an manatwork für die Einsparung von 4 Bytes!
Danke an insertusernamehere für die Einsparung von 8 Bytes!
quelle
function a($a){echo$a,"spooky",$a+2,"me";}
"
<?=($a=$argv[1]).spooky.($a+2).me;
Chaîne , 15 Bytes
nicht konkurrierende, sprachliche Postdates-Frage
Implizite Ausgabe.
quelle
Python, 31 Bytes
Frage und du wirst bekommen.
quelle
lambda n:f'{n}spooky{n+2}me'
für 28 Bytes.Simplex v.0.7 , 20 Bytes
Simplex fühlt sich heute einfach nicht golfen. > _ <
quelle
C 58 Bytes
atoi()
kann unnötig sein.quelle
gcc
, da es auf Bewertungsreihenfolge ankommt. 2. Speichern Sie ein Byte mitint**b
.Mathematica,
4527 Bytesg=ToString[#]<>"spooky"<>ToString[#+2]<>"me"&
Vielen Dank an Martin Büttner für die deutliche Verbesserung (und den herzlichen Empfang).
quelle
g=
und ich denke, siePrint[#,"spooky",#+2,"me"]&
sollten auch funktionieren. :)Row@{#,spooky,#+2,me}&
? Die Ausgabe ist optisch ähnlich, wenn die Variablen nicht definiert sind.Minkolang 0,10 , 49 Bytes
Ich habe (noch!) Keine Möglichkeit, Ganzzahlen in Zeichenfolgen umzuwandeln, das ist also viel länger.
Probieren Sie es hier aus.
Erläuterung
(dl%"0"+$rl:d)
erledigt die Konvertierung eines Int in einen String. Wenn dies durch ein einzelnes Zeichen (wieZ
) ersetzt würde, wäre meine Lösung nur 23 Bytes .nd
Nimmt eine Ganzzahl aus der Eingabe und dupliziert sie.2+
addiert 2 und2g
erhält später die anfängliche Eingabe und legt sie oben auf den Stapel.$O.
gibt den gesamten Stack als Ganzzahl aus und stoppt.quelle
Lua für Windows, 41 Bytes
test mit lua für windows
es nimmt die Eingabe durch io.read und speichert sie in Variable n und gibt dann in derselben Zeile die Variable n aus, dann "gruselig", dann n + 2 und schließlich gibt es "mich" aus
quelle
n=io.read()print(n.."spooky"..n+2.."me")
2.
wird als Zahl behandelt.print(.....'spooky'.. ...+2 ..'me')
How to run:lua51.exe p.lua 2
Größe = 35 Bytes.Rotor, 15 Bytes
Sprache wurde nach der Herausforderung erstellt. Funktioniert nicht im Online-Interpreter (verwendet die Eingabeauswertung.)
quelle
Cookie , 16 Bytes (nicht konkurrierend)
Beachten Sie, dass die letzten Änderungen an der Github-Seite nicht für diese Herausforderung vorgenommen wurden. Cookie befindet sich noch in der Entwicklung.
Erläuterung:
quelle
Gelee, nicht konkurrierend
13 bytes Diese Antwort ist nicht konkurrierend, da die Herausforderung vor der Erstellung von Jelly liegt.
Ich kann nicht QUARTATA HILFE OUTGOLFEN
Probieren Sie es online!
Wie es funktioniert
quelle
+2ṭż“×¥X“ŀ`»
Perl 5 ,
2019 BytesDer Code erfordert die
-p
Schalter. Vielen Dank an @Xcali für das Golfen ab 1 Byte!Probieren Sie es online!
quelle