Common Lisp (SBCL), 52 bytes
(format`,t"~[Programming Puzzles~;Code~@TGolf~]"0 1)
Huellas dactilares Programming Puzzles
(format`,t"~[ProgrammingPuzzles~;Code~@TGolf~]"01)
Huellas dactilares Code Golf
Sin golf:
(format t "~[Programming Puzzles~;Code Golf~]" 0 1)
Explicación:
El truco proviene básicamente de cómo #'formatfunciona en Common Lisp.
En CL, se puede omitir la mayoría de los espacios en blanco siempre que no haya ambigüedad sobre dónde comienzan o terminan los tokens. El primer truco fue separar los símbolos formaty t. Tuve que terminar sin ambigüedades el formatsímbolo sin cambiar cómo tse interpretó. Afortunadamente, `en CL finaliza el token anterior antes de que se procese y ,cancela el efecto de` (`se usa para implementar plantillas, donde la siguiente expresión que sigue se" cita ", pero ,se evalúa cualquier sub-expresión prefijada con a y el resultado incluido en la plantilla, por lo que `, es casi un no-op).
El tercer argumento formates la cadena de plantilla. formates similar a printf en C, pero tiene directivas de formato mucho más potentes y usa ~ para indicarlas en lugar de%. ~ [y ~] le permiten seleccionar entre múltiples opciones de impresión, con ~; separándolos. Se proporciona un argumento adicional para formatear: el índice numérico del que desea imprimir. Para asegurar que el "" en Code Golf sobreviva, utilicé la directiva de tabulación ~ T, que se utiliza para insertar espacios en blanco, generalmente para alinear el texto en columnas. ~ @ T es una variación que solo inserta un número dado de espacios, por defecto a 1.
Finalmente, hay dos argumentos para formatear: 0 y 1. Antes de que se elimine el espacio en blanco, ~ [~; ~] utiliza el 0 para seleccionar "Rompecabezas de programación" y el argumento de formato adicional (el 1) se descarta (estoy no estoy seguro de qué tan estándar es la eliminación de argumentos de formato extra, pero esto funciona en Steel Bank Common Lisp). Después de eliminar el espacio en blanco, solo hay un argumento (01) que selecciona "Code Golf" en su lugar.
Code Golftambién se eliminará el espacio , ¿qué pasa con el que está adentroProgramming Puzzles?