Der Real Slim Shady


43

Geben Sie Folgendes in so wenigen Bytes wie möglich aus:

I'm Slim Shady. Yes, I'm the real Shady.
All you other Slim Shadys are just imitating.
So, won't the real Slim Shady please stand up?
Please stand up. Please stand up.

Die folgenden fünf Wörter müssen GENAU EINMAL in Ihrem Code vorkommen:

I'm
Slim
Shady
real
stand


32
Jetzt ist dieses dumme Lied in meinem Kopf.
Darth Egregious

Ist es in Ordnung, wenn das Programm mehr als den Volltext ausgibt? Dh Einschließen der Lyrik in parens.
Sylwester

@ Sylwester Solange es den Regeln folgt, können Sie es wie gewünscht codieren.
Rybo111

Ist das wirklich Kolmogorov-Komplexität ? Es ist wahr, dass jedes Programm, das die richtige Ausgabe hat, die obige Kolmogorov-Komplexität einschränkt, aber die zusätzliche Einschränkung scheint ein nicht optimales Programm zu erzwingen.
Peter Taylor

@PeterTaylor du hast vielleicht recht - ich überlasse es der Community zu bearbeiten oder nicht.
Rybo111

Antworten:


28

Python: 176

print"{0}{1}{2}. Yes, {0}{3}{2}.\nAll you other {1}{2}s are just imitating.\nSo, won't {3}{1}{2} p{4}?\nP{4}. P{4}.".format("I'm ","Slim ","Shady","the real ","lease stand up")

Natürlich die gleiche Idee wie bei anderen Komprimierungslösungen (obwohl unabhängig erhalten).


1
Ich habe diese irrtümlich abgelehnt. Es tut uns leid. (Wenn Sie Änderungen vornehmen, denke ich, dass ich die Ablehnung entfernen kann)
edc65

@ edc65: Danke für die Ehrlichkeit :) Ich habe die Antwort bearbeitet.
Nneonneo

Sie können 3 Bytes absparen, indem Sie die Leerzeichen erneut verwenden. print"{0}{1}{2}. Yes, {0}{3}{2}.\nAll you other{1}{2}s are just imitating.\nSo, won't{3}{1}{2} p{4}?\nP{4}. P{4}.".format("I'm"," Slim"," Shady"," the real","lease stand up")
Feersum

25

Brainfuck 1923 Bytes

Genießen...

-[------->+<]>.+[-->+<]>++.---[->+++<]>+.
[->+++++<]>-.>-[--->+<]>--.--[--->++++<]
>.---.++++.[->+++++<]>-.>-[--->+<]>--.>+
[----->+++<]>+.-------.+++.+[--->+<]>++.
-----[++>---<]>.++[--->++<]>.--[->+++<]>-.
[->++++<]>+.[--->+<]>----.-[++>---<]>+.
------------.++++[->++<]>+.+[-->+<]>++.---
[->+++<]>+.[->+++++<]>-.---[->++++<]
>.------------.---.--[--->+<]>-.---[----->++<]
>.-------------.----.+++++++++++.[++>---<]
>--.>-[--->+<]>--.>+[----->+++<]>+.-------.
+++.+[--->+<]>++.-----[++>---<]>.>
++++++++++.+++[->+++++<]>.[--->+<]>+..
[++>---<]>--.--[->++++<]>+.----------.++++++.-
[---->+<]>+++.+++++[->+++<]
>.+++++.------------.---.+++++++++++++.
[-->+++++<]>+++.>-[--->+<]>--.--
[--->++++<]>.---.++++.[->+++++<]>-.>-
[--->+I'm<]>--.>+[----->+++<]>+.-------.+++.+
[--->+<]>++.------.+[---->+<]>+++.[->+++<]>+.--
[--->+<]>---.-------------.--[--->+<]>-.-
[--->++<]>.+++++++++++.--.+.
[---Slim->+<]>+++.-[--->++<]>-.++++.----.
+++++++++++.+[->+++<]>++.--[--->+<]
>-.-----------.+++++.-------.--[->+++<]>-.
>++++++++++.>-[--->+<]>--.[--->+<]>--.
[->+++++<]>+.------------.--[->++++<]>-.
--------.-.[++>---<]>++.[->+++<]>-.[---->+
<]>+++.---[->++++<]>.------------.---.--[---
>+<]>-.---[----->Shady++<]>.-------------.-
---.+++++++++++.[++>---<]>--.>-[--->+<]
>--.--[--->++++<]>.---.++++.[->+++++<]
>-.>-[--->+<]>--.>+[----->+++<]>+.-------.
+++.+[--->+<]>++.-[---->+<]>++.[-->+++++++<]
>.----.-------.----.--[--->+<]>--.++++[->+++<]
>.--[--->+<]>-.---[->++++<]>-.+.+[->+++<]
>++.+++++++++++++.----------.-[--->+<]
>-.---[->++++<]>+.-----.[--->++++<]>-.>
++++++++++.[->++++++++<]>.+[--->++++<]
>.---real----.----.--[--->+<]>--.++++[->+++<]
>.--[--->+<]>-.---[->++++<]>-.+.+[->+++<]
>++.+++++++++++++.----------.-[--->+<]>-.---
[->++++<]>+.-----.[->+++++<]>--.++[--->++<]
>.[-->stand+++++<]>.+[--->++++<]>
.-------.----.--[--->+<]>--.++++[->+++<]
>.--[--->+<]>-.---[->++++<]>-.+.+[->+++<]
>++.+++++++++++++.----------.-[--->+<]
>-.---[->++++<]>+.-----.[->+++++<]>--.

Standard-Loop-Löcher


Enthält nicht die fünf Wörter.
NWP

6
Vielleicht scrollen Sie nach rechts, aber ich werde den Beitrag bearbeiten, damit Sie nicht zu ...
Joshpbarron

Ich habe gescrollt, aber irgendwie habe ich die Worte verpasst, sorry.
NWP

JETZT ist es klar!
Edc65

1
Ich habe mir 1918 Zeichen ausgedacht. Ich weiß nicht, dass sich eines dieser Zeichen außerhalb der Norm befindet, bei der es um zusätzliche Bytes geht. Ich kenne noch keine andere Methode zum Zählen von Bytes, also würde ich 1918
Malachi

17

Perl, 155

Mit Verbesserungen von Martin Büttner und Thaylon :

$_="01. Yes, 02X.
All you other1s are just imitating.
So, won't21 p3?
P3. P3.";s/\d/("I'm"," SlimX"," the real","lease stand up")[$&]/ge;s/X/ Shady/g;print

@ MartinBüttner Exzellente Vorschläge. Danke :-)
zimperliches

Sie können den letzten weglassen; zu.
Thaylon

2
Ich liebe den Teil "All you other 1s"
William Barbosa

Umschalten um das "" für 157: $ _ = "01. Ja, 032. Alle anderen imitieren nur. Also, wird nicht31 p4? P4. P4."; S / 0 / I'm / g; s / 1 / Slim2 / g; s / 2 / Shady / g; s / 3 / die echte / g; s / 4 / lease aufstehen / g; print
Thaylon

Minen sind jetzt so ähnlich und ich war es später. Ich lösche sie einfach. Sie können weitere 2 Byte erhalten mit: $ _ = "01. Ja, 02X. Alle anderen imitieren nur. Also, wird nicht21 p3? P3. P3."; S / \ d / ("I'm", "SlimX", "the real", "lease stand up") [$ &] / ge; s / X / Shady / g; print
Thaylon

12

Ruby, 154 Bytes

$><<"012. Yes, 032.
All you other12s are just imitating.
So, won't312 p4?
P4. P4.".gsub(/\d/){%W{I'm \ Slim \ Shady \ the\ real lease\ stand\ up}[$&.hex]}

Nachdem ich einigen Leuten beim Aufteilen der Füllstrings geholfen hatte, entschloss ich mich, ihre Ersatz-Callback-Idee zu testen. ;)


1
Sie können einige Zeichen speichern: #{h+a}ist kürzer als "+h+a+"und #{d+h+a}ist kürzer als "+d+h+a+".
ProgramFOX

1
@ProgramFOX oO ... Ich schäme mich zu sagen, dass ich nur daran gedacht habe #{h}#{a}.
Martin Ender

Kann ein paar mehr mit h=" Slim"+a=" Shady"und eins durch Ersetzen puts mit sparen $><<.
Histokrat

154 mit.gsub(/\d/){%W{I'm \ Slim \ Shady \ the\ real lease\ stand\ up}[$&.hex]}
Ventero

@Ventero danke! :)
Martin Ender

9

JavaScript (E6) 165

Genauso in einer anderen Sprache

alert("012. Yes, 05326All you other12s are just imitating6So, won't5312 p4?\nP4. P4."
.replace(/\d/g,x=>"I'm1 Slim1 Shady1real1lease stand up1 the 1.\n".split(1)[x]))

Erläuterung: Ersetzen Sie jede einzelne Ziffer in der ersten Zeichenfolge durch die entsprechende Zeichenfolge im Array ["I'm"," Slim"," Shady","real","lease stand up"," the ",".\n"]

Überarbeitet mit den neuen Regeln hier bei PPCG (Ausgabe von einer Funktion zurückgegeben, keine Einschränkungen für Features, die neuer als die Herausforderung sind), könnte dies 158 sein. Siehe den Ausschnitt

F=
_=>`012. Yes, 0532.
All you other12s are just imitating.
So, won't5312 p4?
P4. P4.`.replace(/\d/g,x=>"I'm, Slim, Shady,real,lease stand up, the ".split`,`[x])

console.log(F())


1
Verrückte Scheiße, ich mag es
John Smith

Gute Implementierung :) Sie können ein Byte speichern, indem Sie ein Template-Literal in der replaceFunktion verwenden und durch \neine aktuelle Newline ersetzen.
Shaggy

@ Shaggy Ich könnte besser mit Template-Literalen umgehen, aber sie wurden zur Zeit (August 2014) in keinem Browser implementiert
edc65

Ah ich sehe. Ungültig für meine Antwort , da diese Frage gestellt wurde, bevor die Spezifikation, die Vorlagenliterale definiert, standardisiert wurde?
Shaggy

1
@JacobPersi haben einen Blick
edc65

6

CJam - 133

"I'm| Slim| Shady| the real|lease stand up|432. Yes, 412.
All you other32s are just imitating.
So, won't132 p0?
P0. P0."'|/~5,{`/\*}/

Versuchen Sie es unter http://cjam.aditsu.net/

Ich denke , es funktioniert auch in GolfScript , wenn Sie ersetzen '|mit"|"


7
Alle anderen zweiunddreißig ahmen nur nach. Also, nicht eins drei zwei pinkeln ze-ro? Natursekt ze-ro. Natursekt ze-ro. So wird es von nun an in meinem Kopf klingen. : P
Dennis

6

GolfScript, 162 154 152 144 Bytes

"I'm ":i"Slim ":|"Shady":y". Yes, "i"the real ":!y".
All you other "|y"s are just imitating.
So, won't "!|y" p""lease stand up":l"?
P"l". P"l"."

Online testen


3
Sie können 8 Bytes einsparen, indem Sie \nund ndurch einen tatsächlichen Zeilenumbruch ersetzen und nicht-alphanumerische Variablennamen (z. B. &) auswählen , um die Leerzeichen um diese herum zu entfernen.
Dennis

@ Tennis Vielen Dank! Ich habe meine Antwort bearbeitet.
ProgramFOX

Der Krieg hat begonnen.
Josiah Winslow

5

VBA 307 Bytes

Und mit Zeilentrennzeichen verschleiert (nur zum Spaß). Basierend auf dieser Antwort

Function p()
e = "Slim ": m = "Shady": i = "I'm ": n = "lease stand up": s = "real ": a = "."
p = i & e & m & ". Yes, " & i & "the " & s & m & a & Chr(10) & "All you other " & e & m & "s are just imitating." & Chr(10) & "So, won't the " & s & e & m & " p" & n & Chr(10) & "P" & n & ". P" & n & a
End Function

Aufruf aus dem Sofortfenster mit ?p.

Die 307 beinhaltet die ?p.


1
Oh,? P im unmittelbaren Fenster sehe ich, +1
Alex

Sie sollten loswerden a = "."Ich denke, Sie könnten ein paar Bytes rasieren
Malachi

Eigentlich, auf den zweiten Blick , denke ich, dass es besser lesbar ist mit den Zeilentrennern gegen neue Zeilen ...
RubberDuck

Können Sie die Leerzeichen zwischen den Operatoren nicht entfernen?
Malachi

1
@Malachi nach der Spezifikation, ja, aber tatsächliche Implementierungen erzwingen die Leerzeichen auf Sie. Wenn ich es stattdessen in VBScript machen würde, könnte ich es wahrscheinlich ein bisschen verkürzen.
RubberDuck

5

PHP - 151 Bytes

<?="I'm Slim Shady".gzinflate("]Œ1
„0E{Á;üÎFr…ÅÒNHe9à°F&‰d&,Þ~Avmßûï;̬=Æ.ÂVFaø•–ÃµÍ ‚#WäÓx    ñR
*Œ­ª!Ä`d!½Ï¹Ï=>9uöót7Ø…Ij”ÔýÕ6Ó?qx‚/");@realstand;

Hexdump:

0000000 3f3c 223d 2749 206d 6c53 6d69 5320 6168
0000010 7964 2e22 7a67 6e69 6c66 7461 2865 5d22
0000020 318c 840a 1030 7b45 3bc1 cefc 7246 c585
0000030 4ed2 6548 e039 46b0 8926 2664 de2c 057e
0000040 7641 df6d effb cc3b 3dac 2ec6 56c2 6146
0000050 f812 9695 b5c3 20cd 2382 e457 14d3 0978
0000060 52f1 2a0a ad8c 21aa 60c4 2164 cfbd cfb9
0000070 3e3d 7539 f3f6 3774 85d8 1949 946a d416
0000080 d5fd d336 713f 8278 222f 3b29 7240 6165
0000090 736c 6174 646e 003b
0000097

Eine andere Antwort ohne Verwendung von gzinflate (228 Bytes):

Liest Shorts (16 Bit), extrahiert 3 5-Bit-Ganzzahlen als Indizes einer Nachschlagetabelle.

<?$a=str_split(" .Yes,AlyouthrajimngSw'pP?
")+[27=>"I'm ",'Slim ',@Shady,'the real ','lease stand up'];$b=unpack(@v26,'o…~:tç       (ƒ-4€t£9ê`0BË-SBT $2U`Y{ÿXg |ác');foreach($b as$c)echo$a[$c>>10],$a[$c>>5&31],$a[$c&31];

Hexdump:

0000000 3f3c 6124 733d 7274 735f 6c70 7469 2228
0000010 2e20 6559 2c73 6c41 6f79 7475 7268 6a61
0000020 6d69 676e 7753 7027 3f50 220a 2b29 325b
0000030 3d37 223e 2749 206d 2c22 5327 696c 206d
0000040 2c27 5340 6168 7964 272c 6874 2065 6572
0000050 6c61 2720 272c 656c 7361 2065 7473 6e61
0000060 2064 7075 5d27 243b 3d62 6e75 6170 6b63
0000070 4028 3276 2c36 9d27 026f 8504 7e0c 3a03
0000080 e774 0918 0901 8328 1c2d 8034 a374 ea39
0000090 6001 3011 cb42 532d 5442 a007 3224 6055
00000a0 9d59 ff7b 5802 2067 e17c 2763 3b29 6f66
00000b0 6572 6361 2868 6224 6120 2473 2963 6365
00000c0 6f68 6124 245b 3e63 313e 5d30 242c 5b61
00000d0 6324 3e3e 2635 3133 2c5d 6124 245b 2663
00000e0 3133 3b5d
00000e4

5

C 374

Indem man die Erinnerung verschiebt

Nicht die kürzeste, aber geht es noch schneller?

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char *s;
void m (int d, int f, int p)
{
    memmove (s+p+f, s+p, strlen(s)-p+1); // Shift a part of the string to make room for our insertion
    memcpy (s+p, s+d, f); // Copy the desired reference in place
}
int main ()
{
    s = malloc (168);
    strcpy (s,"I'm Slim Shady. Yes, the real.\nAll you others are just imitating.\nSo, won't the please stand up?\nP. ");

    m (0, 4, 21);
    m (8, 6, 33);
    m (3, 11, 54);
    m (28, 5, 100);
    m (3, 11, 105);
    m (118, 14, 135);
    m (134, 16, 151);
    puts (s);
}

Es ist 374 Zeichen lang nach der Minimierung.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char*s;void m(int d,int f,int p){memmove(s+p+f,s+p,strlen(s)-p+1);memcpy(s+p,s+d,f);}int main(){s=malloc(168);strcpy(s,"I'm Slim Shady. Yes, the real.\nAll you others are just imitating.\nSo, won't the please stand up?\nP. ");m(0,4,21);m(8,6,33);m(3,11,54);m(28,5,100);m(3,11,105);m(118,14,135);m(134,16,151);puts(s);}

Schön, aber Sie können bis zu 278 Bytes Golf spielen:char s[168]="I'm Slim Shady. Yes, the real.\nAll you others are just imitating.\nSo, won't the please stand up?\nP. ";m(d,f,p){memmove(s+p+f,s+p,strlen(s)-p+1);memcpy(s+p,s+d,f);}main(){m(0,4,21);m(8,6,33);m(3,11,54);m(28,5,100);m(3,11,105);m(118,14,135);m(134,16,151);puts(s);}
Johan du Toit

5

Java, 247

Mein erster Code Golf, während ich Java lerne. Hat es gepostet, weil es den anderen (voll funktionsfähigen) Java-Eintrag und den Haskell-Eintrag übertrifft.

class S{public static void main(String[]a){String s="I'm",t=" Slim",u=" Shady",v=" the real",w="lease stand up";System.out.print(s+t+u+". Yes, "+s+v+u+".\nAll you other"+t+u+"s are just imitating.\nSo, won't"+v+t+u+" p"+w+"?\nP"+w+". P"+w+".");}}

5

C # 209 205 201 197 209 212 217

class P{static void Main(){System.Console.Write("{0}{1}{2}. Yes, {0}{3}{2}.\nAll you other {1}{2}s are just imitating.\nSo, won't {3}{1}{2} p{4}?\nP{4}. P{4}.", "I'm ","Slim ","Shady","the real ","lease stand up");}}

Jetzt mit korrekter Kapitalisierung und neuen Zeilen


1
Sie könnten wahrscheinlich mehr Zeichen einsparen, indem Sie Leerzeichen von Formatzeichenfolgen zu Ersetzungen wie verschieben WriteLine("{0}{1}","I'm ","Slim ").
NightElfik

1
Der abschließende Zeilenumbruch scheint keine Voraussetzung zu sein, verwenden Sie .Write()stattdessen .WriteLine(). Auch wenn es erforderlich ist, ist .Write()mit a \nkürzer.
Bob

danke @ Bob, der mir weitere 4 Byes erspart hat! Auch auf meine VB Antwort!
Malachi

Sie haben keine Großbuchstaben P auf der Bitte zweimal
aufstehen

@TopinFrassi, ich habe es bei dieser Antwort und auch bei meiner VB-Antwort behoben. Mir fehlte auch ein Leerzeichen. Ich frage gerade nach den neuen Zeilen in der Ausgabe ...
Malachi

5

VB 253 249 245 241 244 285 259 223

Ich hasse New Line Terminierung

Module M
Sub Main
Console.Write("{0}{1}{2}. Yes, {0}{3}{2}.{5}All you other {1}{2}s are just imitating.{5}So, won't {3}{1}{2} p{4}?{5}P{4}. P{4}.","I'm ","Slim ","Shady","the real ","lease stand up",vbCr)
End Sub
End Module

Jetzt mit korrekter Groß- und Kleinschreibung und ohne Tabulatoren in der Ausgabe *

Vielen Dank VB für vbCrLf

Vielen Dank, @ Taylor Scott!


Ich frage mich, ob dies ohne die Tabulatoren und neuen Zeilen laufen wird ?????
Malachi

Ich kann nicht in Visual Studio 2013
Malachi


1
@ TaylorScott, anscheinend können Sie es jetzt ohne die Einrückungen codieren. oder vielleicht ist das nur Mono für Sie
Malachi

Soweit ich weiß, ja, was der Compiler stark abhängig analysieren kann auf ist , was Version sind Sie auf - vor allem dem Weg zurück zu VB 6.0 und vor
Taylor Scott

4

VBA 343 Bytes

Sub EMINEM()
e = "Slim "
m = "Shady"
i = "I'm "
n = "lease stand up"
em = "real "

MsgBox i & e & m & ". Yes, " & i & "the " & em & m & "." & Chr(10) & "All you other " & e & m & "s are just imitating." & Chr(10) & "So, won't the " & em & e & m & " p" & n & Chr(10) & "P" & n & ". P" & n & "."

End Sub

1
Sehr nette Implementierung
Malachi

Vielen Dank, Malachi, kann diesen Golf nicht als alte Fans von Eminem überspringen.
Alex

Ich arbeite gerade an einem.
Malachi

2
Es ist großartig, jemanden beim Golfen in VBA zu sehen. Kannst du nicht mit in das unmittelbare Fenster drucken ??
RubberDuck

1
@ ckuhn203 "?" wechselt zu 'print', aber ich brauche debug.print, damit es jedes Mal kaputt geht, wenn ich "?" benutze. Sie können gerne darauf hinweisen, ob ich das hier tun kann, danke!
Alex


3

PHP - 196 171

<?$S="Shady";$P="lease stand up";$R="the real ";$I="I'm ";$s="Slim ";echo"$I$s$S. Yes, $I$R$S
All you other $s$S"."s are just imitating.
So, won't $R$s$S p$P?
P$P. P$P."

;


3

Lua 201 193 188 178

h=" Shady"i="I'm"s=" Slim"..h r=" the real"u="lease stand up"io.write(i,s,". Yes, ",i,r,h,".\nAll you other",s,"s are just imitating.\nSo, won't",r,s," p",u,"?\nP",u,". P",u,".")

Ungolfed & erweiterte einige

h=" Shady"
i="I'm"
s=" Slim"..h
r=" the real"
u="lease stand up"
io.write(i,s,". Yes, ",i,r,h,".\nAll you other",s,"s are just imitating.\nSo, won't",r,s," p",u,"?\nP",u,". P",u,".")

3

Common Lisp, 197

(let((a"I'm ")(b"Slim ")(c"Shady")(d"real ")(e"lease stand up"))(format t"~{~A~}"(list a b c". Yes, "a"the "d c".
All you other "b c"s are just imitating.
So, won't the "d b c" p"e"?
P"e". P"e"")))

3

Perl, 161 164 Bytes

Nicht ganz so kurz wie die Antwort von squeamish ossifrage , aber ich wollte die CamelCaseCompression teilen, die noch niemand benutzt hat und die das Entfernen vieler Leerzeichen und Anführungszeichen ermöglicht.

Es braucht allerdings einen etwas längeren Text, um wirklich nützlich zu werden.

$_="0 1 2. Yes, 03 2.
AllYouOther 1 2sAreJustImitating.
So, won't3 1 24?
4. 4.";s/\d/qw(I'm Slim Shady TheReal PleaseStandUp)[$&]/ge;s/\B([A-Z])/ \L\2/g;print

Bearbeiten: Auf Thaylons Vorschlag wurde die s/(\S)([A-Z])/\1 \L\2/gErsetzung um vier Zeichen gekürzt. Bei Komma-Großbuchstaben greift das jedoch nicht auf, so dass ein zusätzliches Leerzeichen eingefügt werden musste, bevor "nicht" angezeigt wird.


Interessant. Ein bisschen kürzer mit "keine Wortgrenze": s / \ B ([AZ]) / \ L \ 1 / g;
Thaylon

Vielen Dank @ Thaylon. \ B ist etwas, worüber ich lesen muss. Es ist komisch.
Super

3

PYTHON: 198 193 Bytes

i,s,h,r,t="I'm ","Slim ","Shady","real ","lease stand up"
print i+s+h+". Yes, "+i+"the "+r+h+".\nAll you other "+s+h+"s are just imitating.\nSo, won't the "+r+s+h+" p"+t+"?\n"+"P"+t+'. P'+t+'.'

bewegen pleasein die Variable Halte stand upund loszuwerden Ihrer gVariable und möglicherweise entfernen /nSie brauchen sie nicht
Malachi

Wenn ich die \ n entferne, gehen die Zeilenumbrüche verloren und ich gehe davon aus, dass diese für die Ausgabe erforderlich sind.
RageCage

3

Golfscript - 140 (twittern)

"I'm"" Slim"" Shady"". Yes, "3$" the real"3$".
All you other"6$2$"s are just imitating.
So won't"5$3$3$" p""lease stand up""?
P"1$". P"1$"."

Ich bin Slim Shady. Ja, 3 die echten 3.

Alle anderen 62 ahmen nur nach.

Also wird 533 nicht bitte aufstehen?

P1. P1.


3

Rust (volles Programm), 183 180 178 173 172 Bytes

178 -> 173 Bytes, danke an Sara J

fn main(){print!("{}{}{}. Yes, {0}{}{2}.
All you other{1}{2}s are just imitating.
So, won't{3}{1}{2} p{}?
P{4}. P{4}.","I'm"," Slim"," Shady"," the real","lease stand up")}

Probieren Sie es online!



@ SaraJ Ofc, offensichtlich! Danke :)
ruohola

2

C # 226

class P{static void Main(){System.Console.Write("{0}{1}{2}. Yes, {0} the{3} {2}.All you other{1}{2}s are just imitating.So, won't the{3}{1}{2} please{4}up?Please{4}up. Please{4}up.","I'm"," Slim ","Shady"," real"," stand ");}}

Sie haben einige Stellen verpasst, an denen Sie eine Reihe von Zeichen entfernen können. codegolf.stackexchange.com/a/35557/9435
Malachi

2

Java, 308 301 298 292 258

Java ist ein bisschen ausführlich, aber hier ist mein Versuch:

class P{public static void main(String[]c){String s=" Shady",t=" the real",l="lease stand up",i=" Slim",m="I'm";System.out.format("%s%s%s. Yes, %s%s%s.\nAll you other%s%ss are just imitating.\nSo, won't%s%s%s p%s?\nP%s. P%s.",m,i,s,m,t,s,i,s,t,i,s,l,l,l);}}

1
Sie können "real" und "the" 1-mischen, sie sind immer zusammen 2-verschieben Sie einige Leerzeichen aus der Zeichenfolge des großen Formats 3-vor allem: Verwenden Sie mehr einzelne Variablen, das Array a ist nutzlos. Alles in allem können Sie zu ~ 270
edc65

@ edc65 Ich wusste nicht, dass ich in Java mehrere Zeichenfolgen deklarieren kann, ohne Stringmehrere Male zu schreiben . Deshalb hatte ich das Array für alle bis auf eine Variable. Vielen Dank für die Hinweise.
Tim

2

MySQL: 273 267

set @i="I'm", @s="Slim", @h="Shady", @r="real", @t="stand", @p="lease stand up";select concat(@i," ",@s," ",@h,". Yes, ",@i," the ",@r," ",@h,".\r\nAll you other ",@s," ",@h,"s are just imitating.\r\nSo, won't the ",@r," ",@s," ",@h," p",@p,"?\r\nP",@p,". P",@p,".");

2

Rubin: 211

Dieser ist beeindruckend, da das einfache Drucken des Texts effizienter ist, aber dies ist viel cooler.

puts Zlib.inflate("eJxdjDEKwzAQBHu9Yjs3Rl8ILt0FVKU88GErnCWhO2H8e6sIwUmzxQyz87AjSOyz0XJ6vFhHzB3axqhM8hFuEsGZG3IX9ZYoqDLeTQ1xj0YW0+pdyCOOnAa7/XwTFGFShhqlBa083PMXePyDC15NOP8=".unpack("m0")[0])#I'mSlimShadyrealstand

2

JavaScript 259 240 238 Bytes

Nicht so gut, könnte aber genauso gut eine Antwort posten.

b=String.prototype,b.a=b.replace,alert("123. Yes, 16537All you other 23s are just imitating7So, won't 6523 p4?\nP4. P4.".a(/1/g,"I'm ").a(/2/g,"Slim ").a(/3/g,"Shady").a(/4/g,"lease stand up").a(/5/g,"real ").a(/6/g,"the ").a(/7/g,".\n"))

Mehr lesbare Version:

b=String.prototype
b.a=b.replace
alert("123. Yes, 16537All you other 23s are just imitating7So, won't 6523 p4?\nP4. P4."
    .a(/1/g,"I'm ")
    .a(/2/g,"Slim ")
    .a(/3/g,"Shady")
    .a(/4/g,"lease stand up")
    .a(/5/g,"real ")
    .a(/6/g,"the ")
    .a(/7/g,".\n")
    )

2

F #, 250 242

[1..21]|>List.iter((function|1|5->"I'm "|2|9|13->"Slim "|4->". Yes, "|6|12->"the real "|8->".\nAll you other "|11->"s are just imitating.\nSo won't "|15->" p"|16|18|20-> "lease stand up"|17->"?\nP"|19->". P"|21->"."|_->"Shady")>>printf "%s")

Mehr lesbare Version mit Zeilenumbrüchen:

[1..21]|>List.iter((function
|1|5->"I'm "
|2|9|13->"Slim "
|4->". Yes, "
|6|12->"the real "
|8->".\nAll you other "
|11->"s are just imitating.\nSo won't "
|15->" p"
|16|18|20-> "lease stand up"
|17->"?\nP"
|19->". P"
|21->"."
|_->"Shady")>>printf "%s")

2

JavaScript (ES6), 165 163 Byte

f=

_=>`${a="I'm"}${b=` Slim${c=` Shady`}`}. Yes, ${a+(d=" the real")+c}.
All you other${b}s are just imitating.
So, won't${d+b} p${e="lease stand up"}?
P${e}. P${e}.`

console.log(f());


2

PHP, 179 Bytes

<?
$i="I'm";
$s=" Slim";
$h=" Shady";
$p="lease stand up";
$r=" the real";
echo"$i$s$h. Yes, $i$r$h.\nAll you other$s$h"."s are just imitating.\nSo, won't$r$s$h p$p?\nP$p. P$p.";

Und golfen

<?$i="I'm";$s=" Slim";$h=" Shady";$p="lease stand up";$r=" the real";echo"$i$s$h. Yes, $i$r$h.\nAll you other$s$h"."s are just imitating.\nSo, won't$r$s$h p$p?\nP$p. P$p.";
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.