Wählen Sie Ihr bevorzugtes englisches 6-Buchstaben-Wort, das keine wiederholten Buchstaben enthält , wie z wombat
.
Schreiben Sie ein Programm in einem N × N-Zeichenraster ohne Kommentare , sodass jede Zeile und Spalte alle Buchstaben Ihres Wortes in Kleinbuchstaben in beliebiger Reihenfolge enthält. Das Programm muss eine Definition Ihres Wortes mit mindestens 36 Zeichen ausgeben .
Regeln
- Ausgabe auf Standardausgabe. Es erfolgt keine Eingabe.
- Ihr Wort muss auf Dictionary.com sein und darf nur az enthalten. Keine Eigennamen, keine Akronyme, keine Abkürzungen, keine Kontraktionen.
- Ihr Programm und Ihre Ausgabe enthalten möglicherweise nur druckbare ASCII-Zeichen (Hex-Codes 20 bis 7E). (Dies zählt nicht die notwendigen Zeilenumbrüche im Programmraster.)
- Kommentare sind alles, was der Compiler oder Interpreter traditionell ignoriert. Sie können Code verwenden, der nicht zur Ausgabe beiträgt oder nicht offiziell ausgeführt wird.
- Die Ausgabedefinition sollte grammatikalisch und genau sein, kann aber durchaus witzig oder clever sein.
- Jede Zeile oder Spalte, die mindestens 6 Buchstaben Ihres Wortes in Kleinbuchstaben enthält, ist gültig. Diagonalen spielen keine Rolle.
Wertung
Dies ist Codegolf, aber da alle Einsendungen das gleiche quadratische Format haben müssen, können Sie einfach Ihre Punktzahl mit N angeben. Die niedrigste N gewinnt, und natürlich ist eine N unter 6 unmöglich. Bei Stimmengleichheit gewinnt die am höchsten bewertete Antwort.
Beispiel
Wenn Ihr Wort war wombat
, könnte Ihr Programm so aussehen (N = 7):
wombatD
ombatEw
mbatFwo
bat(wom
atWwomb
tBwomba
)wombat
Beachten Sie, dass jede Zeile und jede Spalte die Zeichen enthält w
o
m
b
a
t
.
Die Ausgabe könnte sein: (40 Zeichen)
Cute short-legged Australian marsupials.
quelle
golfed
" sein und die Definition"a description of this program's code"
(für alle, die herausfinden können, wie das geht!).Antworten:
Perl - Trauben - 11
edit: Ich habe versehentlich diese 12 Zeilen gemacht ...
Ausgabe:
Aktualisieren!
Ich habe eine Zeile entfernt, um auf 11 zu kommen, aber ich musste den Satz ändern. Hoffentlich habe ich diesmal keine Fehler gemacht!
Ausgabe:
Die Ausgabe umfasst 37 Zeichen.
quelle
Javascript - Aktion - 15x15
"Definitiv nicht die kürzeste, aber PEW PEW PEW." - James Bond
Link zur
Ausgabe von jsfiddle (37 Zeichen):
quelle
Befunge 93, n = 13
Dies funktioniert, indem der String mit
"v
und umgeleitet wird>"
. Dies funktioniert nur, wenn die Seitenlänge und die Wortlänge Coprime sind und wenn die Seitenlänge größer als 11 ist. Im Moment funktioniert es für das "Wort"vwombat
und daher fürwombat
.Ausgänge
Cute short-legged Australian marsupial
quelle
C (Wort: "Finder", N = 16)
Kompiliert mit GCC mit den Optionen
-Dfinder="" -Df="" -Di="" -Dn="" -Dd="" -De="" -Dr=""
.Es gibt aus
it's defined as a thing that can find other things
(50 Zeichen). Ich glaube, es folgt allen Regeln, aber bitte teilen Sie mir mit, ob ein Fehler vorliegt!quelle
"-Dfinder=main(){puts(it's defined as a thing that can find other things);}" -Dinderf=; -Dnderfi=; -Dderfin=; -Derfind=; -Dnderfi=;
GolfScript, N = 12
Das in GolfScript codierte Wombat-Beispiel. Ausgabe ist
wie in der Frage angegeben. Der interessante Teil ist , dass Sie die meisten Wörter und Antworten verwenden und einfach die entsprechenden Buchstaben in die Lösung so lange einsetzen , wie Sie ein GolfScript eingebaut, die nicht produzieren sind sehr selten,
p
,n
zu offensichtlichen zu sein. Alle anderen Kombinationen führen zu gültigen GolfScript-Variablen, die standardmäßig deaktiviert sind.quelle
Befunge-98 (n = 12)
Ich entschied mich für Kelvin, weil es AV in sich hatte. Ausgänge
kelvin is like celsius but it's lowe
quelle
Si temp
sind 29 Zeichen weniger als 36.;)k
und in Spalte 9 eine
.Python, n = 15
Wort ist "Kanus"
Ausgabe:
quelle
canoes
dort hineinzufügen . Fest.Perl - Wiederholung - 11
Ausgabe:
Rückblickend hätte ich das vielleicht zu einer Schleife machen sollen.
quelle
e
pro Zeile, also dachte ich mir, ich könnte es auch posten.Ruby ,
haters
, = N 10Nach stundenlangen Versuchen von Hand, dem Schreiben eines Generatorprogramms und dem Ändern von Parametern habe ich endlich eine Lösung für N = 10 gefunden!
Ausgaben
Haters nurse hate in hardest hearts.
, genau 36 Zeichen. Probieren Sie es online!Ich entschied mich für Rubin , weil seine Variablen nicht brauchen
$
(Perl) und Single-Strings in Anführungszeichen enthalten können Zeilenumbrüche (Python). Die Tatsache, dass dietr
Methode zwei Buchstaben meines Wortes verwendet, war ein unerwarteter Bonus. Der Kern des Programms ist einfach:Natürlich war es nicht einfach, alle Buchstaben in eine Reihe zu bringen . Ich habe mehrere Variationen derselben Struktur durchlaufen und dabei ein paar Dinge über Ruby gelernt (
tr
benötigt keine Klammern und?\s
ist eine andere Möglichkeit, ein Leerzeichen zu erhalten). Es gab viele Sackgassen und mehrere Fehlalarme. Und dann ... Erfolg!Ist hier ein Kern meines zerhackten Generatorprogramms, wenn jemand interessiert ist.
quelle
Golfscript (n = 10)
Mein erstes Golfskript! Es druckt
kelvin is like celsius but it's lowe
quelle
GolfScript, 13x13
Nicht das kleinste ...
... aber ...
(Die Zeilenumbrüche in den Wörtern sind beabsichtigt, da ansonsten führende oder nachfolgende Leerzeichen verwendet werden, die weniger quadratisch aussehen würden.)
quelle
Python, N = 11
Wort ist "Eltern". Dieser Code ist nicht schön, aber es funktioniert.
Ausgabe:
parent: a person that made a person
Edit: Irgendwie habe ich die Tatsache übersehen, dass Spalten auch das Wort enthalten müssen. Rückblickend war eine Sprache, die Endzeilenzeichen als Teil der Sprache enthält, für dieses Rätsel nicht gut geeignet.
quelle
parent
. Die erste hat zum Beispiel keinea
.p
fehlt in 6 und 8a
.: 4, 6, 7, 11r
.: 4, 10, 11e
.: 4, 5, 8, 9, 11n
.: 3, 5, 7, 11t
.: 1, 3, 6, 8.Pip , n = 14 (nicht konkurrierend)
Die Sprache ist neuer als die Frage. Das Wort ist
quines
. 1Gibt die folgende (zugegebenermaßen unvollständige) Definition aus:
Probieren Sie es online!
Der sinnvolle Teil des Codes lautet wie folgt:
Der Rest des Codes besteht aus willkürlichen No-Ops. Die Hauptschwierigkeit in den Abschnitten "Füller" war nie zu bewerten
q
, da dies den Benutzer zur Eingabe einer Eingabezeile auffordert (kein Problem bei TIO, aber ich wollte es in allen Umgebungen korrigieren). Ich verwenden Kurzschluss logische Operatoren|
und&
und ternäre?
, zu verhindernq
‚s Bewertung.1 Dictionary.com hat einen Eintrag für quine , mit einem Abschnitt über die Programmierbedeutung unten. Da "quine" ein abzählbares Substantiv ist, würde ich argumentieren, dass "quines" ein gültiges Wort ist.
quelle
Javascript, N = 8
Mein Wort ist Warnungen .
Mein Code gibt die Definition der Javascript-Warnfunktion mehrmals aus. Die Javascript-Definition von alert ist "function alert () {[native code]}".
Nur die ersten drei Codezeilen tragen tatsächlich zur Ausgabe bei. Die letzten 5 Zeilen sind Syntaxfehler, aber die ursprünglichen Regeln besagten, dass nicht der gesamte Code ausgeführt werden muss, solange die Ausgabe korrekt ist.
Hier ist ein Link zur Geige: http://jsfiddle.net/tze76pum/
quelle