Umgekehrt aus der Einzigartigkeit entwickelt (Cop's Thread)

23

Ausgehend von der Ausgabe des Programms ( o) des Polizisten, nder Anzahl der verwendeten Bytes ( ) und der Anzahl der verwendeten eindeutigen Bytes ( c) erhält man einen entsprechenden Code, der nbytelang ist und ceindeutige Bytes enthält, die mit der Ausgabe des Polizisten übereinstimmen o.


Dies ist der Cops-Thread . Posten Sie Lösungen, die hier geknackt werden sollen.

Der Räuber-Thread befindet sich hier .


Cops sollten Lösungen wie diese posten:

#[Language], `n` Bytes, `c` Unique Bytes (c*n points) [Cracked](Link-To-Crack)

    [Output]

---

(Optional spoiler)

Regeln

  • Sie dürfen keine Eingaben für Ihr Programm machen.
  • Das Programm muss mindestens 1 Byte verwenden, darf jedoch 255 Byte nicht überschreiten.
  • Die Ausgabe selbst ist ebenfalls auf 255 Bytes begrenzt.
  • Das Programm muss bei mehrmaliger Ausführung konsistente Ausgabeergebnisse haben.
  • Wenn Ihr Beitrag nicht innerhalb von 7 Tagen geknackt wird, können Sie ihn als "sicher" markieren.
    • Veröffentlichen Sie die beabsichtigte Lösung, wenn Sie sie als sicher markieren, und bewerten Sie sie als c*n.
    • Markieren Sie eine Antwort nur als "sicher", wenn Sie wirklich die +15 für eine akzeptierte Antwort möchten. Es macht mehr Spaß zu sehen, wie lange Sie gehen können.

Gewinnen

  • Der ungerissene Beitrag mit der niedrigsten c*nPunktzahl gewinnt den Thread des Polizisten.
  • Dies wird nach 10 sicheren Antworten oder ein paar Wochen entschieden.

Vorbehalte

  • Wenn Sie sich übermütig fühlen, können Sie dem Benutzer den Algorithmus mithilfe eines Spoiler- Tags mitteilen .

Nicht geknackte Einsendungen:

fetch("https://api.stackexchange.com/2.2/questions/147635/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=>!/^#.*cracked/im.test(i.body_markdown)).map(x=>{const matched = /^ ?#{1,3} ?(?:(?:(?:\[|<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).reverse().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>

Magische Kraken-Urne
quelle
1
Sind Funktionen erlaubt? (Vorausgesetzt, sie geben eine Zeichenfolge zurück, nehme ich an.)
Arnauld
1
@cairdcoinheringaahing. OP hat gesagt: "Das Programm muss konsistente Ausgabeergebnisse haben, wenn es mehrmals ausgeführt wird."
5
Nur ein Vorschlag für zukünftige CnRs: Herausforderungen, bei denen der Benutzer eine willkürlich festgelegte Ausgabe wählen kann, sind für CnRs ziemlich problematisch, da die Benutzer im Grunde genommen ihre Tastatur zerkratzen (mit Ausnahme von Syntaxbeschränkungen) und das Ergebnis veröffentlichen können, da der Cop nicht verstehen muss, was ihre ist Programm macht eigentlich. Ansonsten ist dies eine nette Herausforderung. :)
Martin Ender
4
@EriktheOutgolfer Wie gesagt "Syntaxbeschränkungen ausschließen". Der Punkt war nicht, dass Sie tatsächlich einen zufälligen Strom von Zeichen posten, sondern ein zufällig gültiges Programm, das Sie nicht verstehen müssen. Und besonders in vielen Esolangs ist es sehr einfach, ein Programm zu schreiben, das eine anständige Menge zufälligen Mülls ausgibt, ohne zu verstehen, was dieses Programm tut.
Martin Ender
1
In Anbetracht der Tatsache, dass diese Herausforderung bereits mehr als 30 Antworten hat, schlage ich vor, ein Code-Snippet hinzuzufügen, das ungerissene Beiträge wie in diesem Beitrag auflistet .

Antworten:

11

Haskell , 173 Bytes, 8 eindeutig, 1384 Punkte, sicher

"[tag:reverse_engineering]"

Es sieht so aus, als ob diese Antwort ein relevantes Tag für die Frage bereitstellen möchte, während nur 8 verschiedene Bytes verwendet werden.

Wie üblich sollte Ihre Lösung funktionieren, indem Sie sie in den Codeblock von TIO einfügen: Probieren Sie es online aus!


Lösung

'[':___':_'':_':':':__':__:__'':__:__':____:__:'_':__:___:_':_'_:___:__:__:__':_'_:___:_':']':[]
_:_:_'':_:_:_:__:_:_':_:_'_:_:_:_:_:___:_:_:_:__':____:___':_:__'':_=['_'..]

Ja, dies ist ein gültiger Haskell-Code: Probieren Sie es online aus!

Wie es funktioniert

Der Unterstrich _wird bei Haskells Musterabgleich als Platzhalter verwendet. 'wird für Zeichen verwendet, z 'a'. Beide _und 'sind jedoch auch Teil der zulässigen Zeichen für Bezeichnernamen (dürfen in gewissen Einschränkungen zB 'nicht am Namensanfang stehen.). Daher __, _', _'_, _''und so weiter sind alle gültigen Bezeichnernamen. Unter Verwendung einiger aussagekräftigerer Namen wird der obige Code

'[':t:a:g:':':r:e:v:e:r:s:e:'_':e:n:g:i:n:e:e:r:i:n:g:']':[]
_:_:a:_:_:_:e:_:g:_:i:_:_:_:_:n:_:_:_:r:s:t:_:v:_=['_'..]

Die erste Zeile liefert den String, "[tag:reverse_engineering]"wenn jede Variable dem richtigen Zeichen zugeordnet ist. Diese Zuordnung wird in der zweiten Zeile erreicht: ['_'..]ergibt die Zeichenkette "_`abcdefghijklmnopqrstuvwxyz{|}~ ... ", die auf das Muster abgestimmt ist _:_:a:_:_:_:e:_:g:_:i:_:_:_:_:n:_:_:_:r:s:t:_:v:_, um die gewünschte Zuordnung zu erhalten a='a', e='e'und so weiter.

Laikoni
quelle
10

Brain-Flak, 62 Gesamtbytes, 6 Unikate, 372 Punkte, Gebrochen

Hier ist Ihre Ausgabe:

10993592

Diese Nummer hat etwas Besonderes, steht aber nicht auf dem OEIS ;)

Wenn Sie ein Computerwerkzeug verwenden möchten, um dieses Problem zu lösen, haben Sie Pech, der Integer-Golfer erhält 110 Bytes für diese Zahl:

(((((((((((((((((((((()()()()){}){}){}){({}[()])}{}()()){})){}{}())){}{})){}{}){}){}){}())){}{}){}()){}){}){})

Probieren Sie es online!

Sie müssen dies von Hand tun.


Tipps

Hier sind einige Tipps, ich werde im Laufe der Zeit mehr und hilfreichere Tipps verraten. Viel Glück!

10993592 ist der 97. Ausdruck einer Sequenz in OEIS, wird jedoch nicht angezeigt, da nur wenige Ausdrücke enthalten sind.


Meine Lösung verwendet drei Schleifen, die jedoch nicht drei Ebenen tief verschachtelt sind.


Meine Lösung

((((((()()()){}){}){}){}){}())(({(({})[()])}{}){{({}[()])}{}})

Probieren Sie es online!

Dies verwendet einen meiner Lieblingstricks, den Code

(({(({})[()])}{}){{({}[()])}{}})

berechnet den n-ten Term von A090809 . Bei der vollständigen Übermittlung wird der Code einfach mit einer 97 aufgefüllt, um eine große Zahl zu erstellen.

Weizen-Assistent
quelle
Ich kann nicht anders als zu bemerken, dass 10, 993 und 592 in PI im Dezimalbereich 43-63 vorhanden sind ... 592 ist auch in den ersten 10 vorhanden. Ich habe keine Ahnung, ob Brain-Flak das in 62 Bytes erreichen kann ...
Yytsi
ASCII-Modus oder Zahlenmodus?
user202729
@ user202729 Ich habe den Nummernmodus verwendet, also würde ich glauben, dass Räuber das auch brauchen würden. Es würde mich sehr wundern, wenn dies im ASCII-Modus möglich wäre, basierend auf früheren Versuchen.
Weizen-Zauberer
1
@ThePirateBay Ich denke nicht, dass "zu welcher OEIS-Sequenz sie gehört" immer nützliche Informationen sind, bedenken Sie, wie esoterisch Brain-Flak ist. Es ist auch ein Element von A000027, aber diese Beobachtung ist auch unbrauchbar.
user202729
1
Gebrochen
Riley
7

MATL , 6 Bytes × 3 Unique = 18 Punkte. Geknackt

1+0i 0+1i -1+0i 0-1i
Luis Mendo
quelle
2
Verdammt, Gleitkomma-Arithmetik!
Stewie Griffin
2
@StewieGriffin Ich sehe, Sie haben Spaß :-D
Luis Mendo
Übrigens i.^(0:3)gibt keine Gleitkomma-Ungenauigkeiten in Octave, sondern J4:q^in MATL ...
Stewie Griffin
@StewieGriffin Der Unterschied ergibt sich aus der Verwendung der Anzeigefunktion von MATL num2str(..., '%.15g '). Siehe zum Beispiel hier . Dies ist jedoch bei MATL unter Matlab nicht der Fall. Das Fazit ist, dass num2strin Matlab und in Octave
Luis Mendo
Wie auch immer, das hat keinen Einfluss auf diese Antwort. Die angezeigte Ausgabe kann mit MATL unter Matlab und Octave erzielt werden. und insbesondere auf TIO
Luis Mendo
6

Jelly , 7 Bytes × 6 Unique = 42 Punkte, geknackt

843606888284160000

Probieren Sie es online!

8! × 16! ¤

Erik der Outgolfer
quelle
2
geknackt
Jonathan Allan
Oh, haha, ich habe es versehentlich mit einer nachgestellten Null geknackt!
Jonathan Allan
@ JonathanAllan Nun, das ist zum Beispiel leicht austauschbar . Jetzt ist es wohl zu spät ...
Erik the Outgolfer
Nun, ich habe das gleiche Problem mit einer unnötigen Hürde geknackt: p
Jonathan Allan
@ JonathanAllan Versuchen Sie, meine neue zu knacken, wenn Sie möchten!
Erik der Outgolfer
6

Malbolge , 15 bytes, 13 unique, score 195. Sicher!

Ausgänge:

PPCG

Sicher! Vorgesehener Code:

(&a`#""7[}4XE70

Probieren Sie es online!

Lynn
quelle
Ich bin mir sicher, dass dies geknackt werden kann, indem das Programm, das P ausgibt, mit brachialer Kraft erstellt wird, und ein weiteres P darauf aufgebaut wird. Wenn es auf 15 gebracht wird, werden wahrscheinlich die beiden Ps zusammen ausgenutzt.
Joshua
Malbolge ist böse. Es ist schon zu schwer, ein Programm in Malbolge zu schreiben, geschweige denn einen Beitrag zu knacken.
user202729
6

JavaScript (ES8), 103 Bytes, 42 eindeutig (4.326 Punkte) [SAFE]

Ausgangs-Hexdump:

3E 6E 6D 08 33 7A 22 7D 6C 37 7B 36 61 7B 65 71 3A 37 26 7E 7B 7B 38 7B 7D 69 6A 2B 3D 70 74 07 6F 6C 66 7E 1A 2A 3C 37 2D 36 31 38 6A 78 33 62 30 1E 34 3D 66 7B 37 10 26 6A 6A 32 27 6F 2E 33 1B 30 1E 76 27 27 7E 18 6F 68 26 2D 76 6A 6D 6D 2F 2E 0A 3F 17 7D 2B 73 7A 17 38 62 3A 29 20 0C 61 24 21 27 10 2B 20 63 71 72 17 5D 5F 12 5B 02 14 59 17 5A 11 1E 1D 10 16 07 5F 5F 58 58 4B 18 48 4B 04 5F 06 12 16 14 4D 45 5D 5D 16 3A 1C 1D 11 16 1F 51 59 4E 4B 4C 3D 16 1C 0F 2E 46 0E 08 4B 4B 13 45 21 10 06 0E 11 3F 51 57 3E 00 54 5F 49 05 0E 07 5A 51 3E 08 01 25 10 0B 51 36 43 0B 34 1A 43 47 04 46 0E 55 05 00 06 01 40 33 0F 00 53 36 42 42 45 5F 3D 3A 38 74 39 74 71 71 2C 7C 60 38 38 76 63 44 7F 64 28 66 3E 24 7A 66 57 79 24 3C 3C 21 6A 36 27 30 77 7E 36 7E 2A 3E 29

Die Punktzahl ist ungewöhnlich hoch, ich weiß, aber ich denke trotzdem, dass es interessant sein kann, diese zu knacken. Das Programm ist eine Funktion, die eine Zeichenfolge zurückgibt (nur um Verwirrung zu vermeiden, ist dies nicht REPL).

Es sollte nicht zu schwer sein, ich nehme an, es geht nur darum, das Muster zu finden.

Lösung

Es scheint, dass es schwieriger war, als ich gedacht hatte, nach der Tatsache, dass niemand es geknackt hatte. Ich habe geglaubt, dass es mehrere Lösungen geben kann, die sich leicht herstellen lassen. Sowieso ist hier die beabsichtigte Lösung:

f = m => [... m = f + f + f] .map ((a, p) => p + 1 & 256? '': String.fromCharCode ((p & 4? m [p ^ 17]: a) .charCodeAt^83^p*.3)).join

Aus irgendeinem Grund wird es nicht richtig als Code-Snippet angezeigt. Hier ist der TIO-Link .


quelle
Als sicher markiert?
user202729
@ user202729. Ich stimme zu, vielleicht war das Rätsel schwieriger als ich dachte, deshalb ist es jetzt als sicher markiert.
5

Oktave, 13 Bytes, 5 eindeutige Zeichen, Punktzahl: 65. Sicher!

20085918935040000

Dieser sollte nicht zu schwer sein. Wenn du nicht gleich zu den schwierigsten springen willst, ist es vielleicht eine schöne erste Herausforderung :)

Hinweis: Als ich die Frage las, sagte ich: Geben Sie eine Zahl aus, keine Zeichenfolge. Die Ausgabe bei TIO sieht folgendermaßen aus:

ans =    2.0086e+16

Und wird so aussehen, wenn Sie haben format long

ans =  20085918935040000

oder du druckst es so aus:

printf('%i',ans)
20085918935040000

Was ich hatte und Erklärung:

prod prodprod

So einfach ist das. =)

Erklärt:

Normalerweise schreiben Sie dies als prod('prodprod'):, aber Octave behandelt alles, was nach dem Funktionsnamen steht, als Zeichenfolge (Array von Zeichen). Diese werden implizit in ihre ASCII-Werte konvertiert und miteinander multipliziert.

Stewie Griffin
quelle
4

MATL, 4 Bytes, 4 Unique, 16 Punkte. Geknackt

Ausgabe:

1388289520800

Was ich hatte:

1X%p
Dies drückt die Zahl 1, prüft, um welche Klasse es sich handelt, und multipliziert dann die ASCII-Werte der resultierenden Zeichenfolge 'double'.

Stewie Griffin
quelle
Gebrochen
Luis Mendo
4

Java 8 (vollständiges Programm), 97 Gesamtbytes , 34 eindeutig, 3298 Punkte ( Gebrochen von @RobertoGraham )

Ausgabe:

1.4241570377303032

HINWEIS: Dies ist ein vollständiges Programm. Wenn ()->stattdessen Funktionen in Form von zulässig sind:

Java 8 (Lambda-Funktion), 40 Gesamtbytes , 18 eindeutig, 720 Punkte ( geknackt von @ user202729 )

Es ist wahrscheinlich ziemlich schwer, aber was auch immer. Es ist nicht so, dass Java mit dieser Punktzahl sowieso irgendetwas gewinnen wird.


Hinweise:

Der beabsichtigte Code enthält keine einfachen oder doppelten Anführungszeichen. (Die Funktion gibt ein Double zurück.)
Der vorgesehene Code enthält keine Ziffern ( 0-9).


Beabsichtigte Lösung:

Ziemlich witzig (und beeindruckend), wie sehr sich die beiden gegebenen Risse von meinen Vorstellungen unterscheiden, aber für beide Cracker eine Überraschung!

Funktion: Volles Programm:()->Math.log(Math.hypot(Math.PI,Math.E))
interface M{static void main(String[]a){System.out.print(Math.log(Math.hypot(Math.PI,Math.E)));}}

Kevin Cruijssen
quelle
Warum scheinen Sie zwei Programme zu haben, aber nur eine Ausgabe?
Ok,
1
@Okx Weil die Sekunde eine Funktion ist.
Erik der Outgolfer
@Okx Wie Erik schon sagte , weil beide gleich sind. Das Obere als Programm, das Untere als Funktion. Ich warte immer noch darauf, dass Arnauld 's Kommentar beantwortet wird, damit ich einen der beiden entfernen kann.
Kevin Cruijssen
So nah dran, ein unkomplizierter Ausdruck der Zeichenkette ist die richtige Länge, aber zwei Unikate zu viel :-) - eigentlich 1, wenn Sie die Zeilenumbrüche nicht mitzählen ...
Kevin
4

MATL, 11 Bytes, 10 eindeutige, 110 Punkte. SICHER!

Ausgabe:

10803850202590

Um Ihnen dabei zu "helfen":

Dies ist das Produkt von:

[2, 5, 29, 89, 397, 499, 2113]

und es ist eins weniger als das 372884884433 rd prime.


Und hier sind einige echte Tipps. Wenn es in ein paar Stunden nicht geknackt ist, werde ich die Lösung aufdecken.

  1. - Da ist ein qdrin

  2. - Da ist ein Bdrin

  3. - Da ist ein ^drin

  4. - Da ist ein hdrin

  5. - Da ist ein tdrin

Der wahre Code:

9K ^ ZqsBthXB

Erläuterung:

Drücken Sie zwei Ziffern 9und Kund führen Sie die Potenzierung durch. Erstellen Sie eine Liste aller Primzahlen unterhalb dieser Zahl und addieren Sie sie. In Binär umwandeln, den Binärvektor duplizieren und mit sich selbst verketten. Zurück in Dezimalzahl konvertieren und implizit ausgeben.

Stewie Griffin
quelle
3

Haskell , 10 Bytes, 3 Unikate, 30 Punkte, geknackt

2416508937

Eine nette Zahl, die jede Ziffer enthält, obwohl nur 3 eindeutige Bytes verwendet werden.

Die beabsichtigte Lösung funktioniert durch Ersetzen des Codeteils im folgenden TIO-Link: Probieren Sie es online aus!

Laikoni
quelle
2
Geknackt!
H.PWiz
@ H.PWiz Ich habe nicht lange damit gerechnet, aber das ging trotzdem sehr schnell. Ich hatte erwartet (oder zumindest gehofft), dass Räuber zuerst arithmetische Lösungen ausprobieren würden.
Laikoni
3

Haskell , 29 Bytes, 15 eindeutige Bytes, 435 Punkte, geknackt

"33333333333333333333333333333333333333333333334333333333333333333333333333"

Dies ist eine Saite, die 373-mal und eine einzelne hinterhältige Saite enthält 4.

Die beabsichtigte Lösung funktioniert durch Ersetzen des Codeteils im folgenden TIO-Link: Probieren Sie es online aus!

Edit: H.PWiz hat einen gültigen Riss gefunden (der sogar auf 28 Bytes golfen könnte), aber nicht die beabsichtigte Lösung.

Hinweise:

Keine Arithmetik erforderlich. Es gibt eine Lösung mit einem Ausdruck.

Laikoni
quelle
1
Gebrochen
H.PWiz
3

Mathematica, 8 Bytes, 3 eindeutig, 24 Punkte Gebrochen

7448503425106854065710345345644475127957406351360000000
J42161217
quelle
1
Rissig .
user202729
3

Explodieren , 9 Gesamtbytes, 4 eindeutige, 36 Punkte

Ausgabe:

22k2Dk}D}

Beachten Sie, dass die Dokumentation nicht vollständig mit der Implementierung für diese Sprache übereinstimmt. Ich habe dies eines Tages geschrieben und es seitdem nicht mehr angerührt. Eventuell vorhandene Fehler in der Implementierung sind daher jetzt definitiv Funktionen.

Ich denke auch nicht, dass diese Sprache Turing-vollständig ist, so dass Sie es wahrscheinlich brachial erzwingen könnten, aber das ist langweilig.

Ich gebe Ihnen ein beträchtliches Kopfgeld, wenn Sie Reverse-Engineering-Ausgaben in optimal kurzen Explode-Code automatisieren können.

Stephen
quelle
Der Wert Ihres Codes ist 36 oder? Die Ausgabe würde auch 36 Punkte bringen, also stelle ich nur sicher, dass es kein Fehler ist. :)
Stewie Griffin
@StewieGriffin yep, denn als ich die Frage zum ersten Mal las, habe ich sie falsch gelesen und dachte, der Code müsse die gleiche Länge wie die Ausgabe haben.
Stephen
Wie kurz sollte "golfed Explode code" sein?
user202729
@ user202729 sorry, ich hätte erklären sollen - optimalerweise kurzer Explode-Code, da er völlig deterministisch ist
Stephen
Das Problem ist jedoch, dass die Leute möglicherweise Brute-Force-Code schreiben, um die Ausgabe "in der Theorie" zu finden. In der Praxis ist dies jedoch unpraktisch.
user202729
3

Oktave, 4 Bytes, 3 eindeutig, 12 Punkte: geknackt

1.6776e-05

Mal sehen, wie schnell das geht.

Tom Carpenter
quelle
3
Gebrochen
Luis Mendo
@ LuisMendo das wäre derjenige.
Tom Carpenter
2

Pyth, 7 Bytes, 6 Unique, 7 * 6 = 42 Gesamtpunkte

312069475503262125385169244603150327250717758754411025379995130624544231547913731661607993843298516888546865336571981925596

Schauen Sie sich den Pyth-Tipps-Thread an;)

Dave
quelle
2

Gelee , 3 Bytes × 3 Unikate = 9 Punkte, geknackt

263409560461970212832400

Probieren Sie es online!

Ein weiterer Versuch mit Jelly, diesmal hoffentlich herausfordernder.

ȷcȷ

Erik der Outgolfer
quelle
1
geknackt
Jonathan Allan
@JonathanAllan Mit meiner beabsichtigten Lösung dieses Mal: ​​p Ich denke, es war zu einfach, richtig zu brachialisieren? Es gab offensichtlich nur 2763520 mögliche Lösungen ... und ironischerweise verwenden Sie dieselbe Funktion, um diese Zahl sowie die zu knackende Zahl zu berechnen.
Erik der Outgolfer
2

Excel, 22 Bytes, 16 eindeutig, 352 Punkte, Gebrochen

หนึ่งล้านห้าแสนสามหมื่นสองพันสี่ร้อยเก้าสิบห้าล้านห้าแสนสี่หมื่นแปดร้อยหกสิบห้าล้านแปดแสนเก้าหมื่นล้านล้านล้านล้านล้านล้านบาทถ้วน

Das ist vielleicht nicht sehr schwer zu knacken, aber ich kann eine Funktion verwenden, die ich sonst nie verwenden kann. Außerdem wird die Partitur nichts gewinnen, wenn nicht viele andere geknackt werden.

Ingenieur Toast
quelle
geknackt . Wahrscheinlich nicht Ihr Originalcode, aber es funktioniert.
Wythagoras
2

PowerShell, 7 Bytes, 5 Unique = 35 Punkte Gebrochen

Ausgabe:

1125899906842624
AdmBorkBork
quelle
2

Gelee , 8 Bytes * 6 einzigartig = 48 ( Gebrochen )

24197530864197530864197530864197530864197530864192691358024691358024691358024691358013580246916

Sie können versuchen, es hier zu knacken .

Beabsichtigte Lösung: 7ẋ²Ḍ²ẋ4S

Mr. Xcoder
quelle
@JonathanAllan Dein Crack ist ungültig, sorry (es wird nicht das richtige Ergebnis ausgegeben). Sie können den Unterschied hier sehen
Mr. Xcoder
@ JonathanAllan Heh, versuchte gleichzeitig eine andere Herausforderung zu lösen (siehe die Argumente!: P)
Mr. Xcoder
1
@ JonathanAllan Schön, ich habe die beabsichtigte Lösung auch in meine Antwort aufgenommen: D
Mr. Xcoder
2

Haskell , 30 Bytes, 17 Unikate, 510 Punkte, geknackt

"6666666444444455666666666566555533333334333333333"

Die beabsichtigte Lösung funktioniert durch Ersetzen des Codeteils in dem folgenden TIO-Link: Probieren Sie es online aus!

Dies verwendet den gleichen Ansatz wie mein vorherige Antwort , die mit einem anderen Ansatz geknackt wurde.

Einige Hinweise:

Keine Arithmetik erforderlich. Ich habe eine Lösung mit einem Ausdruck.

Laikoni
quelle
1
Gebrochen
Lynn
2

Javascript, 11Bytes, 7Unique Bytes (77 Punkte) (Gebrochen)

0.022522522522522525

Lambda-Funktionsdeklaration in Byteanzahl enthalten, Funktionsaufruf nicht.

Das sollte wirklich einfach sein.

Brian H.
quelle
Behoben geknackt mit Hilfe von @Milk
Arnauld
2

Jelly , 8 Bytes , 2 Unikate, 8 × 2 = 16 Punkte - Sicher!

-4.408500694095235e-05

(Es gibt nur 8.355.840 mögliche solche Programme, also sollte es geknackt werden, denke ich.)

Los geht's bei Online testen!

Wie?

⁽⁽°°°°°°
⁽⁽°ist ein Basis-250-Literal, das -27221
°Umrechnungen von Bogenmaß in Grad ergibt . Dies fünfmal anwenden:
-475.09607568537643
-8.291990784013993
-0.1447225407260702
-0.0025258848375215096
-4.408500694095235e-05

Jonathan Allan
quelle
Nett! Ursprünglich denke ich, dass ein Doppelbyte hier verwandt sein könnte, aber dann habe ich es verworfen. Ich habe auch darüber nachgedacht °, aber nicht darüber nachgedacht und gedacht, dass du bei 0
anfangen musst
@ user202729 unterscheidet sich von , sie sind in keiner Weise verwandt (außer dass sie die beiden folgenden Zeichen verbrauchen).
Erik der Outgolfer 20.11.17
@EriktheOutgolfer Sorry, ich habe gerade die Zeichen falsch geschrieben. Ich meinte .
user202729
2

Gelee , 4 Bytes , 4 Unikate, 4 × 4 = 16 Punkte - Sicher!

121713205122350539153771498803599196214022517709999123476340843193655114000078051089267404501704293755399249186132786797198080437408108773592830098754467315464894774875031495160099382422748898046431945143395996374011431649446848855993397955116462522798880

Beachten Sie, dass die Ausgabe direkt am Limit 255 Byte lang ist.

Ja, die gleiche Punktzahl wie bei meinem anderen (noch nicht geknackten) Geleeeintrag .

Los geht's bei Online testen!

Wie?

7ÆĊ⁺
7ist eine wörtliche sieben
ÆĊder wird n - te Catalan Zahl
der 7 th katalanische Nummer 429
wiederholt die vorherigen Atom
der 429 th Catalan Zahl ist 121713205122350539153771498803599196214022517709999123476340843193655114000078051089267404501704293755399249186132786797198080437408108773592830098754467315464894774875031495160099382422748898046431945143395996374011431649446848855993397955116462522798880.

Jonathan Allan
quelle
72 Bytes sind ein bisschen lang, ja. Sie könnten die Leerzeichen entfernen (62). Sie können auch rzwischen zwei Codepage-Indexlisten vektorisieren und mit einer anderen Codepage-Indexliste verketten, um die Anzahl der Bytes auf 35 zu verringern . Es gibt jedoch auch immer noch wiederholte Bytes und 35 >> 4 ... viel Glück!
Jonathan Allan
2

C (Zweierkomplementmaschine, sizeof (int) = 4), 76 Bytes und 35 eindeutige Bytes für eine Punktzahl von 2660, Safe

Ausgabe:

10542949672924294967287429496729029742949672954294967287429496728808914294967289429496728742949672946944294967291429496728742949672914964294967294429496728742949672891980429496728842949672874294967295792 

Das ist 203 Bytes lang.

#include <math.h>
main () {for (int
i = 0; i <40; i ++) printf ("% u", (int) (cos (i) * 10));}

Ohne das #include wird nicht funktionieren.

Joshua
quelle
Können wir einige compilerspezifische Funktionen wie in gcc verwenden?
1
@ThePirateBay: Hab ich nicht.
Joshua
1
Ich habe einen interessanten Ansatz gefunden, aber ich konnte das letzte Byte nicht ausspielen, also poste ich es einfach hier. main(i){for(;42>i;printf("%u","eirwtlegowvnfemuwphejsno"[abs(24-i++)]-'n'));}
Colera So
@ColeraSu Möglicherweise können Sie von Klein- zu Großbuchstaben wechseln und 'N'zu 78(Zeichencode von N) wechseln .
User202729
@ user202729 aber es würde nicht die Beschränkung von 35 eindeutigen Bytes passen.
Colera So
2

CJam, 15 Bytes * 10 Unique = 150 Punkte

453630781352162854505467929721140132016201833205823402832306035643819420004950

Schlechte Punktzahl, aber hoffentlich schwer zu knacken.

Anmerkung: Im Moment habe ich vergessen, was die Antwort ist. Als solches werde ich es offen halten, bis entweder ich oder jemand anderes es knacken kann.

Esolanging Fruit
quelle
Doppelte Antwort: P markiert, um entfernt zu werden
Christopher
@ Christopher2EZ4RTZ Was meinst du? Dies sind zwei getrennte Antworten mit derselben Aufschlüsselung der Punkte, aber unterschiedlichen Ergebnissen.
Esolanging Fruit
Oh wow mein schlechtes. XD
Christopher
Ahaha ... Sie, Sir, müssen ein Polizist sein, der 2 Tage nach seiner Pensionierung die Antwort so vergessen hat: P
Magic Octopus Urn
@MagicOctopusUrn Jetzt bin ich in Rente und habe kein Interesse mehr daran ...
Esolanging Fruit
2

CJam, 15 Bytes * 10 Unique = 150 Punkte

355605126761554652609272416635107412217265861355621217687464016216276447790261274709847680

Anmerkung: Im Moment habe ich vergessen, was die Antwort ist. Als solches werde ich es offen halten, bis entweder ich oder jemand anderes es knacken kann.

Esolanging Fruit
quelle
2

Japt , 5 Bytes, 5 eindeutige Bytes (25 Punkte) ( Gebrochen by Scrooble)

Ausgabe: 3628801

Zottelig
quelle
Gebrochen
Khuldraeseth na'Barya
@ Scrooble, nicht die beabsichtigte Lösung, aber gut gemacht. Wird als geknackt aktualisiert, wenn ich zu einem Computer zurückkehre. Ich denke jetzt, dass die 4-Byte-Version, die ich hatte, ein bisschen kniffliger gewesen sein könnte, kann es noch posten.
Shaggy
Was war die beabsichtigte Lösung?
Khuldraeseth na'Barya
1

Perl 5 , 31 Bytes, 18 Unique Bytes (558 Punkte) - sicher

1.76295255109024e+180

Beabsichtigte Lösung ( Online ausprobieren! ):

$_=1;for$=(1..111){$_*=$=}print

(Dies berechnet die Fakultät von 111)

Felix Palmen
quelle