Anagram Quines (Fil de voleurs)


11

Ceci est un défi entre , le fil des flics peut être trouvé ici

Votre défi, en tant que voleurs, est de prendre les sorties du fil des flics et de trouver des anagrammes de la sortie qui, lorsqu'elle est exécutée en tant que programme, produit la sortie d'origine fournie.

Le gagnant sera la personne avec les fissures les plus valides sur cette question.

Règles

  • Vous ne pouvez pas casser les réponses marquées comme sûres avec un programme fourni.

  • Si un flic fournit une langue dans laquelle se trouve la solution envisagée, vous devez le cracker dans cette langue particulière, s'il ne le souhaite pas, vous pouvez le cracker dans n'importe quelle langue concurrente.

  • Les règles standard pour Quines s'appliquent.

  • Les fissures ne doivent pas être des quines parfaites. c'est-à-dire qu'ils ne doivent pas sortir leur source exacte mais une réorganisation de celle-ci (l'ordre est fourni par le flic).


Réponses:


5

Langue non spécifiée (CJam), 254 octets, DJMcMayhem

0000000: 3235 362c 583e 3130 2d5b 445d 2f41 612a  256,X>10-[D]/Aa*
0000010: 3a63 6523 0102 0304 0506 0708 090b 0c0e  :ce#............
0000020: 0f10 1112 1314 1516 1718 191a 1b1c 1d1e  ................
0000030: 1f20 2122 2425 2627 2829 2b2e 3334 3738  . !"$%&'()+.3478
0000040: 393b 3c3d 3f40 4243 4546 4748 494a 4b4c  9;<=?@BCEFGHIJKL
0000050: 4d4e 4f50 5152 5354 5556 5759 5a5c 5e5f  MNOPQRSTUVWYZ\^_
0000060: 6062 6466 6768 696a 6b6c 6d6e 6f70 7172  `bdfghijklmnopqr
0000070: 7374 7576 7778 797a 7b7c 7d7e 7f80 8182  stuvwxyz{|}~....
0000080: 8384 8586 8788 898a 8b8c 8d8e 8f90 9192  ................
0000090: 9394 9596 9798 999a 9b9c 9d9e 9fa0 a1a2  ................
00000a0: a3a4 a5a6 a7a8 a9aa abac adae afb0 b1b2  ................
00000b0: b3b4 b5b6 b7b8 b9ba bbbc bdbe bfc0 c1c2  ................
00000c0: c3c4 c5c6 c7c8 c9ca cbcc cdce cfd0 d1d2  ................
00000d0: d3d4 d5d6 d7d8 d9da dbdc ddde dfe0 e1e2  ................
00000e0: e3e4 e5e6 e7e8 e9ea ebec edee eff0 f1f2  ................
00000f0: f3f4 f5f6 f7f8 f9fa fbfc fdfe ff0a       ..............

Essayez-le en ligne!

Comment ça fonctionne

256,                Push the range [0 ... 255].
    X>              Remove the first item (0).
      10-           Remove 10 (0x0a).
         [D]/       Split at occurrences of 13 (0x0d).
             Aa*    Join, separating by 10 (0x0a).
                :c  Cast all integers to character.
                e#  Begins a comment, terminated by the linefeed at the very end.

5

Brain-Flak , Riley

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

Essayez-le en ligne!

Explication

C'était un peu plus facile que je ne l'avais imaginé.

J'ai écrit 3 boucles distinctes pour imprimer chaque type d'accolade:

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

J'ai utilisé la technique Mini-Flak standard pour éviter d'utiliser la <...>monade et pour être honnête, je n'ai jamais vraiment ressenti le besoin d'utiliser la <>nilade.

Cela devait être extrêmement similaire à ce que Riley a fait en premier lieu parce que quand j'avais fini, il me restait un surplus (). Ce n'est pas un problème car il ()s'agit essentiellement d'un no-op au niveau supérieur, donc je l'ai collé à l'avant de mon programme.


1
C'est exactement ce que / comment je l'ai écrit. J'avais besoin de plus ()pour tout faire correspondre. Bien joué!
Riley

4

Haskell, 107 octets, Laikoni

main=print$id=<<['|':[d]>>[d|i<-"$$'''',--..:<<<<====>>[[[[]]]]addddddiiiiiimnnprt|||",i==d]|d<-id['$'..]]

Plus une nouvelle ligne de fuite.

Essayez-le en ligne! (a besoin de quelques secondes pour s'exécuter, car il parcourt tous les caractères unicode).

Le programme a un id(juste avant ['$'..]) qui n'est pas nécessaire pour la logique du programme, mais je dois en quelque sorte dépenser le iet d.


La sortie n'est pas dans le même ordre.
Laikoni

1
@Laikoni: J'ai mal lu le défi. Maintenant c'est réparé.
nimi


3

Pyth, 32 octets, Rod

J+"J+J=JJ 1-2#pTN%"N #%2J=T-1pJJ

Essayez-le en ligne!

Je ne connais pas vraiment bien Pyth, mais j'ai commencé par imprimer la sortie requise et je suis parti de là.

 +"J+J=JJ 1-2#pTN%"N             # Add a '"' to the string in quotes
J                                # Assign result of above step to J
                     #           # Start an infinite loop
                      %2J=T-1    # Loops one iteration, then breaks
                                 # (I have no idea why this works)
                             pJ  # Explicitly print J
                               J # Implicitly print J

2

CJam, 46 octets, Business Cat

93]_:c58]99]95]93]e__:c36]95]95]101]101]e_$_:c

Essayez-le en ligne!

93]                                             # Push [93] onto the stack
   _                                            # Copy
    :c                                          # Push ascii char 93 ']'
      58 99 95 93                               # Push these numbers...
        ]  ]  ]  ]                              # Push entire stack as array
                  e__                           # Flatten and copy
                     :c                         # Map ascii values to all elements
                       36]95]95]101]101]        # Same as above
                                        e_      # Flatten
                                          $     # Sort
                                           _    # Copy, implicitly print
                                            :c  # Map ascii values to all elements
                                                # Implicitly print

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.