(Це варіант щодо друку негативу коду , який мені дуже сподобався! Завдяки Мартіну Бюттнеру ♦ - майже весь цей текст є його.)
Розглянемо символи наступними символами для друку ASCII (зауважте, що пробіл включено):
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
І буквено - цифрові бути наступні:
0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
Розглянемо квадрат друкованих символів ASCII для довжини сторони N, наприклад:
ONE,
{two}
&3,+=
!four
f|ve.
Ми також вимагаємо, щоб кожен рядок і кожен стовпець містили принаймні один символ і одну буквено-цифрову. (Наведений вище приклад задовольняє це.)
Ми визначаємо символічний мінус такого квадрата як квадрат однакового розміру, де кожен символ замінюється буквено-цифровим і навпаки. Наприклад, наступним буде припустимий символічний мінус вищевказаного прикладу:
[&]OK
a...b
1/100
i@#$%
(R) z
Вибір конкретних персонажів не має значення, якщо вони перебувають у вищеназваних категоріях.
Змагання
Ваше завдання - написати програму з квадратним вихідним кодом довжиною сторони N> 1, яка виводить на STDOUT символьний мінус свого вихідного коду. Пробіли повинні бути надруковані. Ви можете або не можете надрукувати один простий новий рядок.
Також застосовуються звичайні правила кволі, тому ви не повинні читати власний вихідний код прямо чи опосередковано. Так само не слід приймати середовище REPL, яке автоматично друкує значення кожного введеного виразу.
Переможець - програма з найнижчою стороною N. У разі вирівнювання виграє подання з найменшими символами у вихідному коді. Якщо все-таки є нічия, рання відповідь виграє.