È Anagram Quine, non solo Quine!


10

L'obiettivo

In questa sfida, il tuo compito è quello di scrivere un programma, che non contenga alcun input, con il maggior numero possibile di anagrammi.

Il tuo punteggio sarà il numero di anagrammi del codice sorgente del tuo programma che sono quine valide divise per il numero totale di anagrammi possibili, ovvero la percentuale di anagrammi che sono quine valide.

Si applicano le scappatoie standard e le regole dei quines standard .

Nota: il programma deve contenere almeno 3 caratteri (non 3 byte).


Ingresso

Ogni anagramma (o permutazione) del tuo programma che è abbastanza piccolo di se stesso (cioè gli anagrammi che stai includendo nel tuo punteggio) non deve ricevere alcun input. Se la tua lingua richiede input come necessità, puoi presumere che al tuo programma verrà assegnata una stringa composta dalla lettera minuscola A. Tuttavia, non devi fare alcun uso dell'input in alcun modo.


Produzione

nil numero di anagrammi distinti del codice sorgente del tuo programma deve essere un quines valido, dove nrappresenta il numero di quegli anagrammi che stai includendo nel tuo punteggio, ad es.

Equazione matematica

Quei quine-anagarams possono produrre in qualsiasi modo tranne che scrivere l'output in una variabile. È consentita la scrittura su file, console, schermo ecc. Anche la funzione returnè consentita.


Esempio di punteggio

Supponiamo che il codice sorgente del programma sia code. E,

  1. codeuscite code.
  2. coeduscite coed.
  3. cdoeuscite cdoe.
  4. cdeouscite cdeo.
  5. cedouscite cedo.
  6. ceoduscite ceod.
  7. ocdeuscite ocde.
  8. oceduscite oced.
  9. odceuscite odce.
  10. odecnon odecgenera o produce errori.
  11. oedcnon oedcgenera o produce errori.
  12. oecdnon oecdgenera o produce errori.
  13. docenon docegenera o produce errori.
  14. doecnon doecgenera o produce errori.
  15. dcoenon dcoegenera o produce errori.
  16. dceonon decogenera o produce errori.
  17. deconon decogenera o produce errori.
  18. deocnon deocgenera o produce errori.
  19. eodcnon eodcgenera o produce errori.
  20. eocdnon eocdgenera o produce errori.
  21. edocnon edocgenera o produce errori.
  22. edconon edcogenera o produce errori.
  23. ecdonon ecdogenera o produce errori.
  24. ecodnon ecodgenera o produce errori.

Il punteggio di questa soluzione sarà

Equazione matematica


Criterio vincente

Vince la soluzione con il punteggio più alto! In caso di pareggio, vince la risposta con un conteggio dei caratteri più elevato (non conteggio dei byte) (da cui il del )! Se il pareggio persiste, vince la soluzione pubblicata in precedenza!



@NeilA. Sono molto più fiducioso che un quine a prova di rotazione possa effettivamente essere scritto in altre lingue rispetto a Unary (anche se non in molte lingue e sarà comunque difficile).
Martin Ender,

Probabilmente è troppo tardi per cambiare le specifiche ora, ma probabilmente avresti dovuto specificare che il programma originale non conta, perché altrimenti questo in sostanza sembra essere un duplicato della nostra domanda sulla vaniglia.
SuperJedi224,

Risposte:


7

Unario, 100%

Questo è essenzialmente lo stesso della risposta Lenguage a causa del modo in cui i due sono correlati. Penso che valga la pena notare, però. L'ho segnato come 100% perché ogni permutazione del codice si tradurrà in un quine di se stesso e vedo che come X / X * 100 = 100%.

5.71728886e + 3431 zero. Il numero completo può essere trovato in questo frammento:

L'equivalente di Brainf * ck si trova in questo frammento:

Fonte di fonte


Congratulazioni per aver vinto! :)
Arjun,

1
@Arjun Grazie, ma la risposta di Legrange è stata la prima e ha lo stesso punteggio. Dovrebbe vincere, invece.
Ingegnere Toast,

@EngineerToast Voglio dire, non importa per me, è CW quindi no +15: P
Christopher,

4

Lenguage, 100%

5.71728886e + 3431 byte nulli. Il numero completo può essere trovato in questo frammento:


@ETHproductions ha risolto il problema. Penso di vincere
Christopher

Questo output sarebbe 5.71728886e + 3431 byte null o qualcos'altro?
ETHproductions

@ETHproductions Sì, credo.
Christopher,

Creato CW perché potrei non essere in giro per rimuovere questo: P
Christopher

@Christopher Dovresti includere la quantità precisa di byte in modo che questo possa essere decodificato. Al momento non c'è modo di dire cosa fa.
Ad Hoc Garf Hunter,


2

Microscript II, punteggio 1/1814399 = 5.5e-7

"qp1h"qp1h

"qph1"qph1 è anche un quine.

Microscript II, punteggio 5/119750399 = 4.2e-8

"qp12h"qp12h

"qp21h"qp21h, "qph12"qph12, "qph21"qph21, "qp1h2"qp1h2E "qp2h1"qp2h1sono anche quines.

Sono sicuro che qualcuno può ottenere un punteggio molto più alto di uno di questi, ma questa è ancora l'unica risposta con almeno un quine che non è il programma originale (che, IMO, non dovrebbe essere conteggiato).


1

V , 16,666 ...%

2i2i

Provalo online!

Esistono 6 possibili anagrammi di questo codice:

2i2i
22ii
i22i
i2i2
ii22
2ii2

E uno di questi è un quine.


Non sono sicuro che il programma originale debba essere considerato un anagramma di se stesso, ma l'OP sembra consentirlo.
SuperJedi224,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.