La tâche
Dans ce défi, votre tâche consiste à écrire un programme, qui ne prend aucune entrée, avec autant d'anagrammes quine d'eux-mêmes que possible.
Votre score sera le nombre d'anagrammes du code source de votre programme qui sont des quines valides divisé par le nombre total d'anagrammes possibles, c'est-à-dire le pourcentage des anagrammes qui sont des quines valides.
Les échappatoires standard et les règles de quines standard s'appliquent.
Remarque: votre programme doit comporter au moins 3 caractères (et non 3 octets).
Contribution
Chaque anagramme (ou permutation) de votre programme qui est quine d'elle-même (c'est-à-dire les anagrammes que vous incluez dans votre partition) ne doit prendre aucune entrée. Si votre langue nécessite une entrée comme une nécessité, alors vous pouvez supposer que votre programme recevra une chaîne composée de la lettre minuscule A. Cependant, vous ne devez en aucun cas utiliser l'entrée.
Production
n
le nombre d'anagrammes distinctes du code source de votre programme doit être des quines valides, où n
représente le nombre de ces anagrammes que vous incluez dans votre partition, c'est-à-dire
Ces quine-anagarams peuvent sortir de n'importe quelle manière sauf écrire la sortie dans une variable. L'écriture dans un fichier, une console, un écran, etc. est autorisée. La fonction return
est également autorisée.
Exemple de notation
Supposons que le code source de votre programme soit code
. Et,
code
sortiescode
.coed
sortiescoed
.cdoe
sortiescdoe
.cdeo
sortiescdeo
.cedo
sortiescedo
.ceod
sortiesceod
.ocde
sortiesocde
.oced
sortiesoced
.odce
sortiesodce
.odec
ne produit pasodec
ou produit une erreur.oedc
ne produit pasoedc
ou produit une erreur.oecd
ne produit pasoecd
ou produit une erreur.doce
ne produit pasdoce
ou produit une erreur.doec
ne produit pasdoec
ou produit une erreur.dcoe
ne produit pasdcoe
ou produit une erreur.dceo
ne produit pasdeco
ou produit une erreur.deco
ne produit pasdeco
ou produit une erreur.deoc
ne produit pasdeoc
ou produit une erreur.eodc
ne produit paseodc
ou produit une erreur.eocd
ne produit paseocd
ou produit une erreur.edoc
ne produit pasedoc
ou produit une erreur.edco
ne produit pasedco
ou produit une erreur.ecdo
ne produit pasecdo
ou produit une erreur.ecod
ne produit pasecod
ou produit une erreur.
Le score de cette solution sera
Critère gagnant
La solution avec le score le plus élevé gagne! En cas d'égalité, la réponse avec un nombre de caractères plus élevé (pas un nombre d'octets) gagne (d'où le bowling de code )! Si une égalité persiste, alors la solution qui a été publiée plus tôt l'emporte!
Réponses:
Unaire, 100%
C'est essentiellement la même chose que la réponse Lenguage en raison de la façon dont les deux sont liés. Je pense que cela vaut la peine de noter, cependant. Je l'ai noté à 100% car chaque permutation du code entraînera un quine de lui-même et je vois cela comme X / X * 100 = 100%.
5.71728886e + 3431 zéros. Le numéro complet se trouve dans cet extrait:
Afficher l'extrait de code
L'équivalent de Brainf * ck se trouve dans cet extrait:
Afficher l'extrait de code
Source de source
la source
Lenguage, 100%
5.71728886e + 3431 octets nuls. Le numéro complet se trouve dans cet extrait:
Afficher l'extrait de code
la source
Gelée , 33,333 ...%
Essayez-le en ligne!
Wiki de la communauté parce que je n'ai pas écrit ceci. Si vous aimez cette solution, ou voulez une explication, consultez le post original de Dennis ici .
la source
Microscript II, score 1/1814399 = 5,5e-7
"qph1"qph1
est aussi une quine.Microscript II, score 5/119750399 = 4,2e-8
"qp21h"qp21h
,"qph12"qph12
,"qph21"qph21
,"qp1h2"qp1h2
Et"qp2h1"qp2h1
sont également Quines.Je suis sûr que quelqu'un peut obtenir un score beaucoup plus élevé que l'un ou l'autre, mais c'est toujours la seule réponse avec au moins une quine qui n'est pas le programme d'origine (qui, l'OMI, ne devrait pas être compté).
la source
V , 16,666 ...%
Essayez-le en ligne!
Il y a 6 anagrammes possibles de ce code:
Et l'un d'eux est une quine.
la source