Diese liebe StackExchange-Site hat so viele Herausforderungen und so viele gute Antworten. Aber was ist mit den Herausforderungen, die nie beantwortet wurden ?
Aufgabe
Schreiben Sie ein Programm oder eine Funktion, die eine pseudozufällige offene unbeantwortete Herausforderung (wie in einer Frage mit genau null Antworten) von PPCG druckt. Alle möglichen Herausforderungen sollten mit der gleichen Wahrscheinlichkeit erstellt werden.
Eingang
- Es wird keine Eingabe vorgenommen.
Ausgabe
- Darf nur den Titel, die Tags und den Link enthalten, die durch Zeilenumbrüche getrennt werden sollen.
- Der Titel muss genau so sein, wie er in der Herausforderung ist.
- Die Tags haben kein striktes Ausgabeformat, müssen jedoch alle Tags enthalten.
- Der Link kann
question-name
die ID nach der Frage enthalten oder nicht und muss zur Herausforderung führen.
- Kann in ein für Menschen lesbares Format übersetzt werden oder nicht.
&
zu&
- Führende und nachfolgende Leerzeichen sind zulässig.
Beispiele
Encode a steganographic encoder into a package
code-challenge,unicode,steganography
/codegolf/65159/encode-a-steganographic-encoder-into-a-package
Simple predictive keyboard CG
code-golf
/codegolf/76196/simple-predictive-keyboard-cg
Wertung
Da dies Code-Golf ist , gewinnt die kürzeste Antwort in Bytes.
code-golf
internet
stack-exchange-api
total menschlich
quelle
quelle
Antworten:
JavaScript + HTML,
271250232 ByteAnscheinend können Sie
Date
s als Pseudozufallszahlen verwenden. Ich habe das aus Shaggys Antwort gestohlen .(Verwendet nur ungefähr 4 Ihrer Quote)
Es erstellt ein Array
q
und ruft dann aufg(1)
, wodurch die erste Ergebnisseite abgerufen und zu q hinzugefügt wird. Wenn die Anfrage dies sagthas_more
, ruft sie aufg(f+1)
, wodurch die nächste Seite abgerufen wird, bis sie das Ende erreicht und in das HTML-Dokument schreibt (wodurch die Antwort automatisch entweicht).Wenn wir uns nicht um alle unbeantworteten Fragen kümmern , nur die letzten 30 (verwendet nur 1 Ihrer Quote):
JavaScript + HTML,
213196179 Bytesquelle
j.has_more?g(f+1)
Versuchen Sie stattdessen++f<5?g(f)
q=q.concat(j.items)
mitq=[...q,...j.items]
. Es sieht so aus, als wäreTags:
es optional, also können Sie das auch fallen lassen. Und das ist nicht nötigjoin
q.tags
, es wird zu einer Zeichenfolge gezwungen, wenn es mit einer Zeichenfolge verkettet wird. Schließlich sollten Sie durch die Verwendung eines Vorlagenliteral für das Finale auch einige Bytes sparen.Python + Anfragen + JSON + Zufall + HTML,
249239 BytesEs stellte sich heraus, länger als ich möchte.
-10 Bytes dank @totallyhuman unter Verwendung
R.choice
stattR.shuffle
und das erste Element nehmen.quelle
random.shuffle
?random.choice()
?.choice()
!r.get(url).json()
stattdessenhas_more
. Es wählt nur zufällig aus den ersten 30.Bash
255232 BytesEs sieht so aus, als würde ein falsches Ergebnis für Summen für Nichtantworten / unbeantwortet zurückgegeben. Allgemeine Idee - Gesamt erhalten, dann zufällige Seite mit einem Element erhalten.
Bash
174153 BytesEs wird eine zufällige Frage aus den letzten 30 ausgewählt, nicht aus allen Fragen. Funktioniert über die Befehlszeile. Erforderliche
Lockew3m, jq und neu codieren.Ergebnis:
quelle