Betrachten Sie ein Quadrat aus druckbaren ASCII- Zeichen (Codepunkte 0x20 bis 0x7E) für die Seitenlänge N wie folgt (hier N = 6 ):
=\
g \
7
m+y "g
L ~
e> PHq
Wir fordern auch, dass jede Zeile und jede Spalte mindestens 1 Leerzeichen und 1 Nicht-Leerzeichen enthält . (Das obige Beispiel erfüllt dies.)
Wir definieren das Negativ eines solchen Quadrats als ein Quadrat gleicher Größe, bei dem jedes Leerzeichen durch ein Nicht-Leerzeichen ersetzt wird und umgekehrt. ZB wäre das Folgende ein gültiges Negativ des obigen Beispiels:
1234
a b cd
ZYXWV
!
{} [ ]
?
Die Auswahl von Nicht-Leerzeichen ist irrelevant (solange sie aus dem druckbaren ASCII-Bereich stammen).
Die Herausforderung
Sie müssen ein Programm mit quadratischem Quellcode mit der Seitenlänge N> 1 schreiben , das ein Negativ von sich selbst an STDOUT ausgibt. Nachgestellte Leerzeichen müssen gedruckt werden. Sie können eine einzelne nachgestellte Zeile drucken oder nicht.
Es gelten auch die üblichen Quine-Regeln. Sie dürfen also weder direkt noch indirekt Ihren eigenen Quellcode lesen. Ebenso dürfen Sie keine REPL-Umgebung annehmen, die automatisch den Wert jedes eingegebenen Ausdrucks ausgibt.
Der Gewinner ist das Programm mit der niedrigsten Seitenlänge N . Im Falle eines Gleichstands gewinnt die Einreichung mit den wenigsten Nicht-Leerzeichen im Quellcode. Wenn es immer noch ein Unentschieden gibt, gewinnt die früheste Antwort.