Das ist der Faden der Bullen. Der Räuberfaden ist da .
Ihre Herausforderung besteht darin, ein Programm zu erstellen, das für immer ausgeführt wird, ohne 1 anzuhalten , es sei denn, es erhält eine bestimmte Eingabe oder Eingaben 2 . Wenn es diese Eingabe erhält, muss es in einer endlichen Zeitspanne enden . 3 . Dies ist Code-Golf , daher gewinnt die kürzeste Antwort, die nicht innerhalb einer Woche nach der Veröffentlichung von einem Räuber geknackt wurde. Markieren Sie nach Ablauf der Woche Ihre Antwort als sicher und zeigen Sie die Stopp-Eingabe (in a > ! spoiler quote
) an. Wenn ein Räuber Ihre Vorlage knackt, markieren Sie sie bitte als geknackt und zeigen Sie die Stopp-Eingabe (in a > ! spoiler quote
).
Einreichungen sollten auf TIO ausführbar und knackbar sein . Einsendungen, die nicht auf TIO ausgeführt oder geknackt werden können, sind zulässig, enthalten jedoch bitte Anweisungen zum Herunterladen / Ausführen.
Bitte machen Sie Ihre Eingabe deterministisch und über alle Läufe hinweg einheitlich. Weitere Informationen finden Sie in diesem Meta-Beitrag .
Bitte "implementieren Sie keine RSA" oder andere Dinge, die den Räubern etwas bedeuten. Verwenden Sie obskure Sprachen und Funktionen, ohne langweilige Verschlüsselung und Hashing. Ich kann dies nicht mit Regeln erzwingen, aber Sie können mit heftigen Abstimmungen rechnen, wenn Sie nur etwas tun sha(input) === "abcd1234"
.
1 Unter der Annahme, dass der Computer nicht heruntergefahren wird, nicht kaputt geht, nicht von der Sonne verschlungen wird, sich im Hitzetod des Universums überhitzt oder das TIO-Timeout von 60 Sekunden erreicht.
2 Das Programm muss an mindestens einer Eingabe anhalten . Solange es bei einem Eingang für immer eine Schleife durchläuft und bei einem anderen anhält, funktioniert es.
3 Dies muss <60 Sekunden sein, damit der Code auf TIO getestet werden kann.
Auf der Suche nach ungerissenen Einsendungen?
fetch("https://api.stackexchange.com/2.2/questions/135363/answers?order=desc&sort=activity&site=codegolf&filter=!.Fjs-H6J36vlFcdkRGfButLhYEngU&key=kAc8QIHB*IqJDUFcjEF1KA((&pagesize=100").then(x=>x.json()).then(data=>{var res = data.items.filter(i=>!i.body_markdown.toLowerCase().includes("cracked")).map(x=>{const matched = /^ ?##? ?(?:(?:(?:\[|<a href ?= ?".*?">)([^\]]+)(?:\]|<\/a>)(?:[\(\[][a-z0-9/:\.]+[\]\)])?)|([^, ]+)).*[^\d](\d+) ?\[?(?:(?:byte|block|codel)s?)(?:\](?:\(.+\))?)? ?(?:\(?(?!no[nt][ -]competing)\)?)?/gim.exec(x.body_markdown);if(!matched){return;}return {link: x.link, lang: matched[1] || matched[2], owner: x.owner}}).filter(Boolean).forEach(ans=>{var tr = document.createElement("tr");var add = (lang, link)=>{var td = document.createElement("td");var a = document.createElement("a");a.innerHTML = lang;a.href = link;td.appendChild(a);tr.appendChild(td);};add(ans.lang, ans.link);add(ans.owner.display_name, ans.owner.link);document.querySelector("tbody").appendChild(tr);});});
<html><body><h1>Uncracked Submissions</h1><table><thead><tr><th>Language</th><th>Author</th></tr></thead><tbody></tbody></table></body></html>
R
eingebe, treten sofort Fehler auf, ohne die Funktion überhaupt zu knacken. Ich würde argumentieren, dass dies nicht als tatsächliche Beendigung der Funktion gilt.