Reversed Engineered from Unicité (Thread's Thread)

11

Étant donné la sortie du programme du flic ( o), le nombre d'octets ( n) et le nombre d'octets uniques ( c) utilisés, créez un morceau de code correspondant qui est nlong en octets avec cdes octets uniques qui correspondent à la sortie du flic o.


Ceci est le fil des voleurs . Postez les solutions que vous avez craquées ici.

Le thread COPS se trouve ici .


Les voleurs devraient publier des solutions comme celle-ci:

#[Language], `n` Bytes, `c` Unique Bytes (Cracked)[Original Link to Cop Thread]

    [Solution]

(Explanation)

Règles

  • Vous ne pouvez prendre aucune entrée pour votre programme.
  • Le programme doit utiliser au moins 1 octet, mais ne peut pas dépasser 255 octets.
  • La sortie elle-même est également limitée à 255 octets.
  • Le programme doit avoir des résultats de sortie cohérents lorsqu'il est exécuté plusieurs fois.
  • Si votre soumission n'est pas piratée dans les 7 jours, vous pouvez la marquer comme "sûre".
    • Lorsque vous le marquez comme sûr, postez la solution prévue et notez-la c*n.

Gagnant

  • Le post non fissuré avec le c*nscore le plus bas , gagne le fil du flic.
  • Celui qui craque le plus gagne le fil des voleurs, la première fissure brisant le lien.
  • Cela sera décidé après 10 réponses sûres, ou quelques semaines.

Avertissements

  • Si vous vous sentez arrogant, vous pouvez dire à l'utilisateur l'algorithme à l'aide d'une balise de spoiler .

Remarque: N'oubliez pas non plus de noter les fissures, c'est généralement la partie la plus impressionnante.

Urne de poulpe magique
la source

Réponses:

4

Java 8, 97 octets, 34 octets uniques, Kevin Cruijssen

interface Fillerrrrrrrrrrr{static void main(String...a){System.out.println(1.4241570377303032);}}

Essayez-le en ligne!

Fissure super innovante, passé des heures dessus

Roberto Graham
la source
4

MATL , 4 octets, 4 octets uniques, Stewie Griffin

1X2p

Essayez-le en ligne!

Explication

1X2   % Push predefined literal: string 'double'
p     % Product of array. For strings it uses code points. Implicit display
Luis Mendo
la source
Vous connaissez tous les littéraux prédéfinis ... Je ne sais pas ... Ce n'était pas exactement le même que moi, mais c'était bien sûr le produit de 'double'. :)
Stewie Griffin
@StewieGriffin Ah, je vois, vous avez donc utilisé quelque chose comme 1X%p. En fait, je ne connais que quelques littéraux prédéfinis. J'ai forcé 9:"@X1pDbrutalement à changer Xet1
Luis Mendo
4

MATL , 6 octets, 3 uniques, Luis Mendo

FFFTZF

Essayez-le en ligne!

J'ai immédiatement reconnu la sortie

1+0i 0+1i -1+0i 0-1i

comme les racines de l' unité 4-ème, et je savais que fftsur [0 0 0 1]entraînerait dans ce domaine .

Il m'a fallu un certain temps pour comprendre ce qui FFFTallait pousser [0 0 0 1]et je ne sais toujours pas comment cela fonctionne. EDIT: Luis Mendo a expliqué que Fet Tsont "collants", donc une séquence de Fet Tles automatiquement horzcatles poussera ensemble, par conséquent, FFFTpousse [0 0 0 1].

Ceci est exprimé succinctement dans la documentation (une fois que j'ai recherché):

Pour les vecteurs de lignes logiques, les crochets peuvent être omis; c'est-à-dire que la notation [T F T]ou [TFT]peut être simplifiée en TFT. Un séparateur peut être nécessaire si un nouveau tableau logique suit: TFT TT. Mais il n'est pas nécessaire dans d' autres cas: TFT3.5.

Giuseppe
la source
1
Fet Tsont "collants". FFTDéfinit donc un vecteur ligne[false, false, true]
Luis Mendo
@LuisMendo merci, c'est clair maintenant.
Giuseppe
4

Haskell , 29 octets, 15 uniques, Laikoni

f<$>[1..74]
f 47='4'
f f1='3'

Essayez-le en ligne!

J'avais auparavant les deux presque solutions:

do;d<-[2..74];'3':['4'|d==47]    -- 29,16
do;d<-[-41..31];'3':['4'|d==4]   -- 30,15
H.PWiz
la source
ahh, le commentaire de Laikoni m'a amené à penser que la réponse devait être une seule expression… le plus proche que j'ai eu était ["34"!!(0^x^2)|x<-[-46..27]](28, 18).
Lynn
1
aussi, je ne savais pas que vous pourriez placer un point-virgule juste après docomme ça!
Lynn
1
Oui, j'avais un espace là-bas pendant longtemps avant de deviner qu'il pourrait être valide.
H.PWiz
@Lynn Laikoni a affirmé que la solution est une seule expression dans le chat
H.PWiz
3

JavaScript (ES6), Brian H.

Merci @Milk d' avoir corrigé le dernier «5» de fin

f=f=>1/44.4

console.log(f())

Caractères uniques: ., /, 1, 4, =, >,f

Arnauld
la source
1
Celui-ci sort les 5 supplémentaires à la fin:_=_=>1/44.4
lait
@milk Cela a l'air mieux en effet. Faites-moi savoir si vous souhaitez le publier et je supprimerai celui-ci.
Arnauld
C'est cool, vous pouvez simplement mettre à jour votre message si vous le souhaitez. Je l'ai obtenu en construisant votre fissure.
lait
dit que c'était facile: p
Brian H.
3

Wolfram Language (Mathematica) , 8 octets, 3 uniques, Jenny_mathy

7!!!/77!

Essayez-le en ligne!

Répartition: Factorial[7!!] / Factorial[77]!!est double factorielle.

Je remarque d'abord la longue séquence de 0fin, donc je suppose que cela peut être une sorte de factorielle. FactorIntegerdonne le plus grand facteur 103, donc j'essaie n/103!, et obtenir le prochain plus grand facteur (négatif) premier est 73. Ajuster les facteurs pendant un certain temps donne 105!/77!, alors je pense "qu'il y a déjà 3 symboles 7, !et /donc la façon de créer 105 doit être à partir de ces symboles!". J'ai donc essayé 7!!(ce qui est l'une des quelques choses à essayer) et j'ai obtenu 105 comme résultat correct.

user202729
la source
3

Brain-Flak , 62 octets au total, 6 uniques, Assistant de blé

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

Essayez-le en ligne!

Riley
la source
Bon travail! Ce n'est pas ce que j'avais prévu mais ça marche!
Ad Hoc Garf Hunter
2

Gelée , 7 octets, 6 uniques, Erik the Outgolfer

- Pour une raison quelconque, j'ai commencé avec un zéro de fin dans le résultat. Sans cela, j'aurais donné
8,16!PP
comme solution.


8,⁴!PP0

Essayez-le en ligne!

Comment?

8,⁴!PP0 - Main link of a program taking no arguments and no input
  ⁴     - literal sixteen
8       - literal eight
 ,      - pair = [8,16]
   !    - factorial (vectorises) = [8!, 16!] = [40320, 20922789888000]
    P   - product = 40320 × 20922789888000 = 843606888284160000
     P  - product (no effect) = 843606888284160000
      0 - literal zero (just gets printed)
        - leaving STDOUT displaying 8436068882841600000, as required

... 8,⁴!’Ppour 6 octets, 6 uniques auraient été beaucoup plus difficiles à déchiffrer car le résultat de 843585965494231681 ( 40319 × 2092278988799 ) ne semble pas aussi factoriel.

Jonathan Allan
la source
Alternative: 8µḤ!×! (avec espace de fin)
user202729
Ou 8,⁴!Pavec 2 espaces de fin ( qou un autre octet non implémenté)
Jonathan Allan
2

PowerShell , 7 octets, 5 octets uniques, AdmBorkBork

1PB#---

Essayez-le en ligne!

La sortie 1125899906842624est égale 2^50et 2^50 Byteségale à 1 Pebibyte. Le code réel n'est que de 3 octets, j'ai donc ajouté un commentaire à la fin.

ovs
la source
Agréable. J'avais pensé que clouer sur un commentaire lancerait une boucle aux gens, mais on dirait que j'avais tort. :)
AdmBorkBork
2

Excel, 22 octets, 16 octets uniques, EngineerToast

Une solution possible est:

=BAHTTEXT(2^(480-300))

Les personnages uniques sont =BAHTEX()^02348- .

J'ai reconnu que BAHTTEXT était utilisé en voyant la sortie. En traduisant la sortie du thaï en anglais, j'ai pu trouver la valeur du nombre. J'ai deviné qu'il s'agissait d'une puissance de 2, ce qui est effectivement le cas (à savoir 2 180 ). L'expression 480-300 = 180 a ensuite été construite pour s'assurer que la solution contient 22 octets dont 16 uniques.

wythagoras
la source
2

Alice , 9 octets, 8 octets uniques, Leo

/Yr@
\no/

Essayez-le en ligne!

Déplié, c'est nrYo@.

n  negate the implicit empty string: creates the string "Jabberwocky".
r  range expansion: produces a string that starts with J, 
   goes up in ASCII order to w, down to c, and then up to y.
Y  separate this string into even and odd positions
o  output the even positions
@  terminate

Soit dit en passant, l'orientation des miroirs dans la première colonne est complètement hors de propos, ce qui pourrait facilement être réduit à 7 octets uniques.

Nitrodon
la source
Vous avez raison sur les miroirs! Je suis devenu trop rouillé avec Alice :)
Leo
1

J , 8 octets, 6 octets uniques, Bolce Bussiere

;p.p:i.9

Essayez-le en ligne!

Production:

23 _0.677447j0.296961 _0.677447j_0.296961 0.125003j0.726137 0.125003j_0.726137 _0.379097j0.630438 _0.379097j_0.630438 0.518498j0.521654 0.518498j_0.521654

L'astuce évidente est que, dans la sortie donnée, les nombres complexes apparaissent toujours sous forme de paires conjuguées. Cela m'a fait soupçonnerp. verbe, qui convertit entre les formes polynomiales simples et les formes multiplicatives et racines.

J'ai donc essayé:

p. 23;(...those complex numbers)
   2 3 5 7.00001 11 13 17 19 23

Oui, ma pensée était correcte. La liste des nombres premiers est facile. Monadic ;aplatit la liste des tableaux encadrés en un simple linéaire. L'expression résultante a deux p et deux points, donc le nombre d'octets est parfait.

Bubbler
la source
0

Gelée , 8 octets , 6 uniques, M. Xcoder

7x7²¤ḌḤ²

Essayez-le en ligne!

Comment?

7x7²¤ḌḤ² - Main link: no arguments & no input
7        - literal 7
    ¤    - nilad followed by link(s) as a nilad:
  7      -   literal 7
   ²     -   square -> 49
 x       - repeat elements -> [7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7]
     Ḍ   - convert from a decimal list -> 7777777777777777777777777777777777777777777777777
      Ḥ  - double -> 15555555555555555555555555555555555555555555555554
       ² - square -> 241975308641975308641975308641975308641975308641926913580246913580246913580246913580246913580246916
         - implicit print
Jonathan Allan
la source