La tarea
En este desafío, su tarea es escribir un programa, que no tenga entrada, con tantos anagramas que sean quine de ellos mismos como sea posible.
Su puntaje será el número de anagramas del código fuente de su programa que son quines válidos dividido por el número total de anagramas posibles, es decir, el porcentaje de los anagramas que son quines válidos.
Se aplican las lagunas estándar y las reglas de quines estándar .
Nota: Su programa debe tener al menos 3 caracteres (no 3 bytes).
Entrada
Cada anagrama (o permutación) de su programa que es quine de sí mismo (es decir, los anagramas que está incluyendo en su puntaje) no debe tomar ninguna entrada. Si su idioma requiere entrada como una necesidad, entonces puede suponer que su programa recibirá una Cadena que consiste en la letra minúscula A. Sin embargo, no debe hacer ningún uso de la entrada de ninguna manera.
Salida
n
el número de anagramas distintos del código fuente de su programa debe ser una cantidad válida, donde n
representa el número de esos anagramas que está incluyendo en su puntaje, es decir
Esos quine-anagarams pueden generar resultados de cualquier manera, excepto escribir el resultado en una variable. Se permite escribir en archivos, consolas, pantallas, etc. La función también return
está permitida.
Ejemplo de puntuación
Supongamos que el código fuente de su programa es code
. Y,
code
salidascode
.coed
salidascoed
.cdoe
salidascdoe
.cdeo
salidascdeo
.cedo
salidascedo
.ceod
salidasceod
.ocde
salidasocde
.oced
salidasoced
.odce
salidasodce
.odec
no da salidaodec
o produce error.oedc
no da salidaoedc
o produce error.oecd
no da salidaoecd
o produce error.doce
no da salidadoce
o produce error.doec
no da salidadoec
o produce error.dcoe
no da salidadcoe
o produce error.dceo
no da salidadeco
o produce error.deco
no da salidadeco
o produce error.deoc
no da salidadeoc
o produce error.eodc
no da salidaeodc
o produce error.eocd
no da salidaeocd
o produce error.edoc
no da salidaedoc
o produce error.edco
no da salidaedco
o produce error.ecdo
no da salidaecdo
o produce error.ecod
no da salidaecod
o produce error.
El puntaje de esta solución será
Criterio ganador
¡La solución con la puntuación más alta gana! ¡En caso de empate, la respuesta con un mayor recuento de caracteres (no recuento de bytes) gana (de ahí el código de boliche )! Si aún persiste un empate, ¡la solución que se publicó anteriormente gana!
Respuestas:
Unario, 100%
Esto es esencialmente lo mismo que la respuesta Lenguage debido a cómo se relacionan los dos. Sin embargo, creo que vale la pena señalar. Lo califiqué como 100% porque cada permutación del código dará como resultado una quine de sí mismo y lo veo como X / X * 100 = 100%.
5.71728886e + 3431 ceros. El número completo se puede encontrar en este fragmento:
Mostrar fragmento de código
El equivalente de Brainf * ck está en este fragmento:
Mostrar fragmento de código
Fuente de fuente
fuente
Lenguage, 100%
5.71728886e + 3431 bytes nulos. El número completo se puede encontrar en este fragmento:
Mostrar fragmento de código
fuente
Jalea , 33.333 ...%
Pruébalo en línea!
Wiki de la comunidad porque no escribí esto. Si te gusta esta solución, o quieres una explicación, mira la publicación original de Dennis aquí .
fuente
Microscript II, puntaje 1/1814399 = 5.5e-7
"qph1"qph1
También es una quine.Microscript II, puntaje 5/119750399 = 4.2e-8
"qp21h"qp21h
,"qph12"qph12
,"qph21"qph21
,"qp1h2"qp1h2
Y"qp2h1"qp2h1
son también quines.Estoy seguro de que alguien puede obtener un puntaje mucho más alto que cualquiera de estos, pero esta sigue siendo la única respuesta con al menos una quine que no es el programa original (que, en mi opinión, no debe contarse).
fuente
V , 16,666 ...%
Pruébalo en línea!
Hay 6 posibles anagramas de este código:
Y uno de ellos es una quine.
fuente