Verwenden der folgenden durch Längen getrennten Wortlisten:
https://github.com/Magic Octopus Urn / wordListsByLength
Drucken Sie 1 Wort aus jeder Liste mit einer Länge n
von 1 bis 20, hier ein gültiges Beispiel:
a
an
and
hand
hands
handle
handles
abandons
abandoned
understand
outstanding
newfoundland
understanding
characteristic
characteristics
characterization
characterizations
characteristically
characterologically
chemotherapeutically
Alternativ (Array):
['a', 'an', 'and', 'hand', 'hands', 'handle', 'handles', 'abandons', 'abandoned', 'understand', 'outstanding', 'newfoundland', 'understanding', 'characteristic', 'characteristics', 'characterization', 'characterizations', 'characteristically', 'characterologically', 'chemotherapeutically']
Alternativ (jedes druckbare nicht-alphabetische Trennzeichen außer \n
):
a:an:and:hand:hands:handle:handles:abandons:abandoned:understand:outstanding:newfoundland:understanding:characteristic:characteristics:characterization:characterizations:characteristically:characterologically:chemotherapeutically
Regeln
- Sie können Ihre eigenen 20 Wörter wählen.
- Die Wörter müssen von der angegebenen Github-Seite stammen, genauer gesagt:
- 1 von 1.txt, 1 von 2.txt, etc ...
- Beachten Sie, dass Dateien über 20.txt vorhanden sind, Sie jedoch keine Wörter über 20 Zeichen benötigen.
- Gültige Trennzeichen sind ASCII-druckbare nicht alphabetische Zeichen (gerade Zahlen, egal).
- Nur Klein- oder Großbuchstaben, wählen Sie einen aus und bleiben Sie dabei. keine titel-case erlaubt.
- Bitte verwenden Sie keine 100% Kopie meines Beispiels mit 20 Wörtern ...
- Sie können, aber das macht keinen Spaß.
- Sie sind wahrscheinlich sowieso suboptimal ...
- Wenn Sie die getrennten Dateien NICHT verwenden möchten und eine vollständige Liste benötigen:
- Verwenden Sie unsorted.txt . Dies sind alle
n
TXT-Dateien in einer, alphabetisch sortiert.
- Verwenden Sie unsorted.txt . Dies sind alle
- Beachten Sie, dass Sie NICHT direkt von der URL lesen können, da dies eine allgemeine Lücke darstellt .
- Dies ist Code-Golf , die niedrigste Byteanzahl ist der Gewinner.
Als Referenz ist die Ausgabe 229 Bytes, also schlägt alles, was darunter kommt, die Hardcodierung.
Mögliche Meta-Tag-Diskussion:
Benutzergesteuert, wo der Benutzer seine Ausgaben aus einer Liste von Möglichkeiten anpassen kann?
code-golf
kolmogorov-complexity
natural-language
Magische Kraken-Urne
quelle
quelle
( •_•)>⌐■-■
verstehe herausragende Neufundland(⌐■_■)
Antworten:
Jelly ,
49 35 3130 BytesEin niladischer Link, der eine Liste von Zeichen zurückgibt, oder ein vollständiges Programm, das diese Liste als Zeichenfolge druckt (die durch Leerzeichen getrennten Wörter).
Probieren Sie es online!
Wie?
... was ergibt:
Bisherige:
@ 35:
Verwenden von 10 Wörtern und ihren Präfixen der Länge 1.
@ 49
Einfach 20 komprimierte Wörter.
quelle
Python 2 , 145 Bytes
Probieren Sie es online!
Druckt diese Wörter, getrennt durch Leerzeichen:
quelle
PowerShell ,
166163 ByteProbieren Sie es online!
Handoptimiert, keine Algorithmen. Die beiden Schleifen verbinden
|%{ }
das entsprechende Ende mit dem entsprechenden Anfang. Ich suche nach einer Möglichkeit, sie in eine Schleife zu bringen.quelle
characterful > newfoundland
Python, 169 Bytes
Druckt eine Liste der Wörter.
Probieren Sie es online!
Wörter, die durch Scannen von Sequenzen übereinstimmender Wörter, nach Wortanfang oder -ende und ab Länge 1 oder ab Länge 20 erhalten wurden.
Hier ist das Skript, mit dem ich es bekommen habe. (der Aufwärts-Start-Matching)
quelle
Python 2 ,
126 120112 Bytes-8 Bytes dank Anders Kaseorg (Ich dachte, ich hätte dies von Python 3 migriert, aber es stellte sich heraus, dass ich es vergessen hatte!)
Ein Port meiner Jelly-Antwort funktioniert auch in Python ...
Probieren Sie es online!
Drucke:
quelle
print w[2:-1],w[2:],w[:-1],w,
-8 Bytes enden .JavaScript, 159 Bytes
Probieren Sie es online!
Danke @HyperNeutrino für die Bearbeitung. Ich kehre jedoch zum alten Post zurück (Entfernen des Flags "Node.js"), da dies nichts mit Node.js zu tun hat. Es funktioniert auch perfekt in Browsern.
quelle
f=f=>_
warf mich aus, ich war wie "wird die Funktion nicht überschreiben" (es würde nur Rekursion verhindern)_
enthält bereits die Zeichenfolge.f
als Funktionsname und (ignorierter) Parametername) wiederverwendeten05AB1E , 51 Bytes
Probieren Sie es online!
Separator:
Liste der Wörter:
a, an, ana, anal, house, houses, amazing, criminal, seriously, apparently, accessories, disciplinary, distributions, discrimination, congratulations, responsibilities, characterizations, telecommunications, representationalist, representationalists
quelle
1-10
Bytes zu generieren ...Ruby, 120 Bytes
Druckt Folgendes. Jedes Wort wird aus den 8 obigen Zeichenfolgen unter Verwendung der Binärziffern von
j
zur Auswahl erstellt. Wird bei jeder Iteration der Schleifej
in Anführungszeichen minus 31 um den ASCII-Wert der Zeichen in der Zeichenfolge erhöht.quelle
Pyth , 74 Bytes
Psychopathologisch abenteuerlustig
Probieren Sie es online! Es gibt aus:
Welche, einmal formatiert ergibt:
Erläuterung
Der Schlüssel war, zwei Wörter zu wählen, die sich ergänzen. Ich habe mich dank eines kleinen Tools, das ich geschrieben habe, für " psychopathologisch " und " abenteuerlustig " entschieden . Unter Verwendung dieser beiden Wörter können wir für jede Länge Teilzeichenfolgen finden, die tatsächliche Wörter der bereitgestellten Liste sind . Alle möglichen Zersetzungen werden demonstriert durch:
Der nächste Schritt besteht darin, die Liste der Indizes für eine bestimmte Zerlegung abzurufen. Für meine Zersetzung, entschied ich mich:
16 16 16 16 11 20 22 22 20 20 22 6 20 6 22 0 20 0 20 0
, die Indizes in den verketteten Strings sind:psychopathologicallyadventuresomenesses
.Schreiben Sie schließlich ein Programm, das nur die Indizes durchläuft und die Teilzeichenfolge bei jedem angegebenen Index mit zunehmender Länge anzeigt.
Um Bytes zu sparen, habe ich die Indizes in einer Base-36-Zeichenfolge gespeichert. In
GGGGBKMMKKM6K6M0K0K0
der Tat ist die Liste meiner Indizes in der Basis 36 (da mein höchster Index 22 ist, hätte ich die Basis 23 verwenden können).Programm Erklärung
quelle
C #, 259 Bytes
Offensichtlicher Raum zum Golfen, aber mir ist jetzt die Zeit ausgegangen. Ich weiß, dass es länger ist als das harte Codieren, also wird es behoben, wenn ich später etwas Zeit bekomme.
quelle
using System.Linq;
05AB1E ,
13068 Bytes-62 Bytes dank Erik dem Outgolfer
Probieren Sie es online!
Nimmt von jedem der folgenden Wörter so viele Präfixe wie nötig:
Druckt diese Wörter in einem Array:
quelle
743222
mit•B/™•
)S
also sind es -62 Bytes. ;)Bubblegum , 66 Bytes
Ausgabe:
Probieren Sie es online!
Die Wörter und das Trennzeichen wurden durch simuliertes Tempern ausgewählt:
quelle
Bubblegum , 78 Bytes
Probieren Sie es online!
quelle
Ruby, 107 Bytes
Druckt das folgende Array.
Das Ändern von
p
forputs
(mit nachfolgendem Leerzeichen) ergibt das Folgende zu einem Preis von zusätzlichen 4 Bytes.quelle
Japt , 119 Bytes
Probieren Sie es online!
Drucke:
quelle