El gato complementario

24

Objetivo Escribir un programa completo que genere (para STDOUT o la alternativa más cercana) una cadena de texto arbitraria, de no más de 64 caracteres. Bastante simple, ¿verdad? Bueno, aquí está el truco: no puedes usar ningún personaje que estuviera presente en la salida de la respuesta anterior. Así es, ninguno de ellos.

Por lo tanto, está tratando de ser la última respuesta por un total de tres días. Es decir, no desea que nadie responda la pregunta en las 72 horas posteriores a la publicación de su pregunta.

Algunas reglas

  • Su respuesta (y salida) solo puede contener caracteres ASCII imprimibles, líneas nuevas (retornos de carro incluidos) y pestañas.
  • La salida de su respuesta puede no ser la misma que la salida de otra respuesta. Dos salidas son iguales si y solo si usan exactamente los mismos caracteres.
  • Puede usar cualquier lenguaje que no se haya creado específicamente para este desafío, incluso si se creó después del desafío. (Este lenguaje, por supuesto, debe ser comprobable).
  • No puede utilizar ningún idioma que se haya utilizado anteriormente.
  • Su entrada puede no incluir comentarios. Por supuesto, puede proporcionar un programa adicional comentado.
  • No puede responder dos veces seguidas.
  • Su programa debe tener al menos 1 byte.

Formato de entrada

Su respuesta debería verse generalmente como la siguiente:

# {Language}
Uses: `characters present in the output`

Does not use: `characters used in the previous output` from [previous submission, language](link-to-previous-submission]

    {program}

Outputs:

    {output}

Se agradece una explicación con su respuesta.

Conor O'Brien
fuente
3
Estoy muy confundido acerca de lo que se pregunta. ¿Tengo que imprimir cualquier cadena de caracteres <= 64, y no puedo usar los caracteres en la salida del último envío?
Lynn
1
@Mauris Sí, eso es correcto.
Conor O'Brien
3
Ah bien; el bit sobre "espacio de caracteres" es realmente confuso IMO. Ese término no significa nada ... ¿Tal vez deberías reescribirlo?
Lynn
1
@question_asker Si a nadie se le ocurre una respuesta para seguir la suya, usted gana el desafío (y obtiene la marca de verificación verde). Por ejemplo, si escribiera un programa que generara todos los caracteres ASCII imprimibles, sería imposible seguirlo (ignorando esos lenguajes molestos que generan resultados para el programa vacío).
ThisSuitIsBlackNot
1
@question_asker Su código no puede contener ninguno de los caracteres de la salida de la respuesta anterior ; su salida no puede usar el mismo conjunto de caracteres que cualquier salida anterior. Si el código de la primera respuesta es fooy da salida bar, el código para la siguiente respuesta no puede contener b, ao r; hay una respuesta posterior salida de lata abr, arb, bar, bra, rab, o rba. (Sí, estoy de acuerdo en que esto fue muy confuso).
ThisSuitIsBlackNot

Respuestas:

2

Rubí

$><<'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" '

No utiliza abcdefghijklmnopqrstuvwxyz{}\~_^[]|`de la respuesta anterior .

Imprime y, por lo tanto, utiliza ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", un espacio y una nueva línea.

Lynn
fuente
5

Pyth

Usos: ()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefg.

No utiliza: !"#$%&'()*+,-./0123456789:;<=>?@[\]^_`abcdefghijklnsm{|}~de envío previo en Octave .

Código:

pMCMryyTyyytytttT

Salida:

()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefg
Lynn
fuente
¿Hay un espacio allí? ¿Supongo que no hay pestañas o líneas nuevas que no se muestran? Parece que la siguiente respuesta debe ser un espacio en blanco (o al menos cercano) ...
Stewie Griffin
No hay espacios en blanco en la salida que es mía; Sin embargo
Lynn
5

Brainfuck

Usos: -.

No utiliza: !"%&')+,0123456789<=>ABCDEFGHIJKLNOPRSTWXYZ]`acefghjlnoprstux{| de CJam . Gracias a SuperJedi

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.---------------------------.--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.-------------------------------------------------------------------------------------------.-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.

Salidas:

; (){}[]"'
Seadrus
fuente
2
Esto podría modificarse para usar solo -y .. Esa es mi propuesta para los propósitos del desafío.
SuperJedi224
tinyurl.com/obzsvot
SuperJedi224
2
Lo siento, tomé la usesporción para decir que esas eran las entidades utilizadas en el código. Dame un maldito minuto antes de comenzar a usar votos negativos.
Seadrus
3

CJam

Usos: 0123456789:;_bc

No utiliza:, !GSaefgimnoprstuwde presentación previa, MATLAB

183185535513294435547695067785526290427932963043839368372854060721693597139131275368051870173845056551161192991350318233082749156998652_;128b:c

Salidas:

 !"%&')+,0123456789<=>ABCDEFGHIJKLNOPRSTWXYZ]`acefghjlnoprstux{|
jimmy23013
fuente
Bueno, no puedo vencer esto.
Mutador
3

Octava

Usos: !"#$%&'()*+,-./0123456789:;<=>?@[\]^_``abcdefghijklnsm{|}~y una nueva línea en la salida.

No utiliza: ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"del envío anterior en Microscript .

Código:

[' ':'@','[':'`','{':'~',('@'+' '):('>'+'/')]

Salida:

ans =
 !"#$%&'()*+,-./0123456789:;<=>?@[\]^_`{|}~`abcdefghijklm

Explicación:

Esta es una colección de caracteres ASCII consecutivos. El código es equivalente a:

[char(32:64) char(91:96) char(123:126) char(96:109)]

¿Dónde char(32:64)están los caracteres ASCII de 32 a 64 (espacio para @). Para obtener la parte del alfabeto al final de la salida, tuve que agregar caracteres, ya que no podía usar ay m. @+es igual a 96 (``) y >+/es igual a 109 (m)

Stewie Griffin
fuente
¿Como funciona esto?
Conor O'Brien
@ CᴏɴᴏʀO'Bʀɪᴇɴ, explicación incluida =)
Stewie Griffin
3

Perl

Usos: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz}(con espacio)

No utiliza: "#$%'()*+,-./123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`{|~del envío anterior en ilegible

eval q!print uc q&} abcdefghijklmnopqrstuvwxyz&!and eval q}print q&0abcdefghijklmnopqrstuvwxyz&}and eval q&print length for qw!a bc def ghij klmno pqrstu vwxyzab cdefghij klmnopqrs!&

Salidas:

} ABCDEFGHIJKLMNOPQRSTUVWXYZ0abcdefghijklmnopqrstuvwxyz123456789

... me viene a la mente el viejo chiste sobre los monos que escriben código ...

Puede ejecutar el programa en línea.

Este programa abusa de las características extrañas de Perl para escribir código en casi cualquier subconjunto de ASCII:

  • Las funciones se pueden llamar sin paréntesis en algunos casos (no estoy seguro acerca de las reglas exactas)
  • q#text#donde #puede estar casi cualquier personaje es lo mismo que"text"
  • qw#word1 word2 word3# como lo anterior es lo mismo que ["word1", "word2", "word3"]
  • for se pueden agregar bucles y otras cosas a las líneas, eliminando cualquier puntuación
PurkkaKoodari
fuente
3

Javascript ES6

Respuesta anterior: /codegolf//a/67406/39022

La fuente no contiene !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZespacio ni nueva línea.

alert`abcdefghijklmnopqrstuvwxyz{}\\~_^[]|\``

Salida:

abcdefghijklmnopqrstuvwxyz{}\~_^[]|`

(Alfabeto en minúscula, corchetes, barra diagonal inversa, tilde, guión bajo, quilate, corchetes, tubería y barra de retroceso)

SuperJedi224
fuente
Te creo media vuelta barra en lugar de hacia delante barra. Pero buena entrada!
ETHproductions
@ETHproductions Tienes razón sobre la barra invertida.
SuperJedi224
2

Python 3

Usos: !CGaceilmnoprstw z.

print("Germanic Capitalization is awesome!")

Simplemente imprime Germanic Capitalization is awesome!sin restricciones. ¡Buena suerte!

Conor O'Brien
fuente
2

Microscript II

Respuesta anterior: aquí.El programa no utiliza punto y coma, espacio, paréntesis, corchetes, corchetes, comillas simples o dobles. Este programa sería mucho más corto si no tuviera que evitar las comillas.

La salida incluye: ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"y una nueva línea.

Programa:

97Kp98Kp99Kp100Kp101Kp102Kp103Kp104Kp105Kp106Kp107Kp108Kp109Kp110Kp111Kp112Kp113Kp114Kp115Kp116Kp117Kp118Kp119Kp120Kp121Kp122Kp""P65Kp66Kp67Kp68Kp69Kp70Kp71Kp72Kp73Kp74Kp75Kp76Kp77Kp78Kp79Kp80Kp81Kp82Kp83Kp84Kp85Kp86Kp87Kp88Kp89Kp90Kp123456789qh

Salida exacta:

abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ"123456789"
SuperJedi224
fuente
1
Y el Does not incudebit
Conor O'Brien
2

MATLAB

Usos: !GSaefgimnoprstuw y nueva línea.

No utiliza: !CGaceilmnoprstw zde envío anterior, Python 3 .

[83,116,101,119,105,101,32,71,114,105,102,102,105,110,32,105,115,32,97,32,112,114,111,109,105,110,101,110,116,32,103,101,110,105,111,117,115,33,'']

Huellas dactilares:

ans =

Stewie Griffin is a prominent genious!
Stewie Griffin
fuente
2

Ilegible

Usos: "#$%'()*+,-./123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`{|~

No utiliza: ()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgde envío previo en Pyth

'"'" "'" "'" '""' "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" '" "'"' "" '"'" "'"' "" '"'" "'"' "" '"'" "'"' "" '"'" "'"' "" '"'" "'"'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'""'"' "" '"'" "'"' "" '"'" "'"' "" '"'" "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "'" "'" '""' "" '"'" "'"' "" '"'" "'"' "" '""' "" '""' "" '""' "" '""' "" '""' "" '""' "" '""' "" '""' "" '""'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" "'" ""

Salidas:

"#$%'()*+,-./123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`{|~

En caso de que se pregunte, sí, programar a mano en este lenguaje es doloroso, así que hice este script (en JavaScript) para generar el código:

var program = `"`,
    output = "\"#$%'()*+,-./123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`{|~";
for(var i = 1, c = 0; c < output.length; i++) {
  program = `'""` + program;
  if(i == output.charCodeAt(c)) {
    program = `'"` + program;
    c++;
  }
}
program;

Usé el intérprete de Python para Unreadable aquí para ejecutar el código.

usuario81655
fuente
Tener un espacio allí haría la vida difícil para el siguiente =)
Stewie Griffin
@StewieGriffin Eso es cierto. ¿Es demasiado tarde para editar? xD TBH, sin embargo, creo que este desafío puede continuar por mucho más tiempo porque hay muchos idiomas que tienen variables preestablecidas en letras mayúsculas o minúsculas, por lo que solo un carácter sería una respuesta válida. (¡Aunque no sería demasiado interesante y lo hace muy fácil para la próxima respuesta!)
user81655
1
Creo que ya es demasiado tarde. Alguien podría estar trabajando en una solución, por ejemplo, en un espacio en blanco, y de repente agregar un espacio en la salida probablemente los moleste.
Stewie Griffin
@StewieGriffin Sí, ese fue mi razonamiento también.
user81655
1

GolfScript

Usos: espacio, nueva línea, !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ .

No utiliza 0-9A-Za-z{ni espacio de envío anterior en Perl .

El código:

'!'.!=('['.!=,>''+

La salida:

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ

Y una nueva línea final.

Pruébalo aquí

Lynn
fuente