Elija su palabra favorita en inglés común de 6 letras que no tenga letras repetidas , como wombat
.
Escriba un programa en una cuadrícula de caracteres N × N sin comentarios, de modo que cada fila y columna contenga todas las letras de su palabra en minúsculas en cualquier orden. El programa debe generar una definición de su palabra en 36 caracteres o más .
Reglas
- Salida a stdout. No hay entrada
- Su palabra debe estar en Dictionary.com y solo debe contener az. Sin nombres propios, sin siglas, sin abreviaturas, sin contracciones.
- Su programa y salida solo pueden contener caracteres ASCII imprimibles (códigos hexadecimales 20 a 7E). (Esto no cuenta las nuevas líneas necesarias en la cuadrícula del programa).
- Los comentarios son cualquier cosa que el compilador o el intérprete ignoran tradicionalmente. Puede usar código que no contribuya a la salida o que no se ejecute oficialmente.
- La definición de salida debe ser gramatical y precisa, pero ciertamente puede ser divertida o inteligente.
- Cualquier fila o columna que al menos contenga las 6 letras únicas de su palabra en minúsculas es válida. Las diagonales no importan.
Puntuación
Este es el código de golf, pero dado que todas las presentaciones deben estar en el mismo formato cuadrado, simplemente puede especificar su puntaje con N. El N más bajo gana y, por supuesto, un N por debajo de 6 es imposible. En caso de empate, gana la respuesta más votada.
Ejemplo
Si su palabra fuera wombat
su programa podría verse así (N = 7):
wombatD
ombatEw
mbatFwo
bat(wom
atWwomb
tBwomba
)wombat
Observe que cada fila y cada columna tiene los caracteres w
o
m
b
a
t
.
El resultado puede ser: (40 caracteres)
Cute short-legged Australian marsupials.
fuente
golfed
", y la definición"a description of this program's code"
(¡para cualquiera que pueda descubrir cómo hacer esto!).Respuestas:
Perl - uvas - 11
editar: accidentalmente hice estas 12 líneas ...
Salida:
¡Actualizar!
Eliminé una línea para bajarla a 11 pero tuve que cambiar la oración. ¡Espero no haber cometido ningún error esta vez!
Salida:
La salida es de 37 caracteres.
fuente
Javascript - acción - 15x15
"Definitivamente no es el más corto, pero PEW PEW PEW". - James Bond
Enlace a la
salida jsfiddle (37 caracteres):
fuente
Befunge 93, n = 13
Esto funciona redirigiendo la cadena con
"v
y>"
. Esto solo funciona cuando la longitud lateral y la longitud de la palabra son coprimas y cuando la longitud lateral es mayor que 11. En este momento, funciona para la "palabra"vwombat
y, por lo tanto, parawombat
.Salidas
Cute short-legged Australian marsupial
fuente
C (palabra: "buscador", N = 16)
Compilado con GCC, con las opciones
-Dfinder="" -Df="" -Di="" -Dn="" -Dd="" -De="" -Dr=""
.Sale
it's defined as a thing that can find other things
(50 caracteres). ¡Creo que sigue todas las reglas, pero no dude en decirme si hay algún error!fuente
"-Dfinder=main(){puts(it's defined as a thing that can find other things);}" -Dinderf=; -Dnderfi=; -Dderfin=; -Derfind=; -Dnderfi=;
GolfScript, N = 12
El ejemplo de wombat codificado en GolfScript. La salida es
como se da en la pregunta. La parte interesante es que puede usar la mayoría de las palabras y respuestas y simplemente insertar las letras correspondientes en la solución, siempre y cuando no produzca un GolfScript integrado que sea muy raro
p
, ya quen
son obvias. Todas las demás combinaciones conducen a variables de GolfScript válidas que no son opcionales por defecto.fuente
Befunge-98 (n = 12)
Elegí Kelvin porque tenía av. Salidas
kelvin is like celsius but it's lowe
fuente
Si temp
tiene 29 caracteres menos de 36.;)k
y a la columna 9 le falta unae
.Python, n = 15
La palabra es "canoas"
Salida:
fuente
canoes
allí. Fijo.Perl - repetir - 11
Salida:
Mirando hacia atrás, tal vez debería haber hecho esto un bucle.
fuente
e
por línea, así que pensé que podría publicarlo.Rubí ,
haters
N = 10Después de horas de intentos a mano, escribiendo un programa generador y ajustando parámetros, ¡finalmente encontré una solución para N = 10!
Salidas
Haters nurse hate in hardest hearts.
, exactamente 36 caracteres. Pruébalo en línea!Elegí Ruby porque sus variables no necesitan
$
(Perl), y las cadenas entre comillas simples pueden contener nuevas líneas (Python). El hecho de que eltr
método use dos de las letras de mi palabra fue una ventaja inesperada. El núcleo del programa es sencillo:Conseguir que todas las letras se alineen, por supuesto, no fue simple. Pasé por varias variaciones en la misma estructura y aprendí un par de cosas sobre Ruby en el proceso (
tr
no necesita paréntesis y?\s
es otra forma de obtener un espacio). Hubo muchos callejones sin salida y varios falsos positivos. Y luego ... ¡éxito!Aquí hay un resumen de mi programa generador hackeado, si alguien está interesado.
fuente
Golfscript (n = 10)
Mi primer golfscript! Se imprime
kelvin is like celsius but it's lowe
fuente
GolfScript, 13x13
No es el más pequeño ...
... pero ...
(Tener los saltos de línea dentro de las palabras es intencional, porque de lo contrario tendría espacios en blanco iniciales o finales que se verían menos cuadrados).
fuente
Python, N = 11
La palabra es "padre". Este código no es bonito, pero funciona.
Salida:
parent: a person that made a person
Editar: de alguna manera me perdí el hecho de que las columnas también deben contener la palabra. En retrospectiva, un lenguaje que incluye caracteres finales como parte del lenguaje no era adecuado para este rompecabezas.
fuente
parent
. El primero, por ejemplo, no tiene una
.p
falta en 6 y 8a
.: 4, 6, 7, 11r
.: 4, 10, 11e
.: 4, 5, 8, 9, 11n
.: 3, 5, 7, 11t
.: 1, 3, 6, 8.Pip , n = 14 (sin competencia)
El lenguaje es más nuevo que la pregunta. La palabra es
quines
. 1Da como resultado la siguiente definición (ciertamente incompleta):
Pruébalo en línea!
La parte significativa del código se ejecuta así:
El resto del código es arbitrario sin operaciones. La principal dificultad en las secciones de "relleno" nunca fue evaluar
q
, ya que solicitará al usuario una línea de entrada (no es un problema en TIO, pero quería corregirlo en todos los entornos). Usé operadores lógicos de cortocircuito|
y&
, y ternario?
, para evitarq
la evaluación.1 Dictionary.com tiene una entrada para quine , con una sección sobre el significado de la programación en la parte inferior. Como "quine" es un sustantivo contable, diría que "quines" es una palabra válida.
fuente
Javascript, N = 8
Mi palabra es alertas .
Mi código genera la definición de la función de alerta de JavaScript varias veces. La definición de alerta de Javascript es "función de alerta () {[código nativo]}".
Solo las primeras tres líneas de código contribuyen realmente a la salida. Las últimas 5 líneas son errores de sintaxis, pero las reglas originales establecieron que no todo el código debe ejecutarse siempre que la salida sea correcta.
Aquí hay un enlace al violín: http://jsfiddle.net/tze76pum/
fuente