Сообщение Аресибо - это межзвездное радиосообщение 1974 года, несущее основную информацию о человечестве и Земле, отправленное в шаровое звездное скопление M13 в надежде, что внеземной разум сможет его получить и расшифровать ... Сообщение состояло из 1679 двоичных цифр, приблизительно 210 байтов ...
Число 1679 было выбрано потому, что оно является полупростым (произведение двух простых чисел) и должно быть расположено в виде прямоугольника 73 рядами по 23 столбцами. Альтернативное расположение, 23 строки на 73 столбца, создает непонятный набор символов (как и все другие форматы X / Y).
Это сообщение с добавленным цветом, чтобы выделить его отдельные части. Фактическая двоичная передача не несла информацию о цвете.
Ваша задача - вывести сообщение Аресибо в точном формате 23х73, как показано на рисунке. Любой из этих форматов вывода приемлем:
- Текст, используя один символ для единиц, а другой для нулей (используя обычные правила для разделения строк)
- 2D массив двух разных значений
- Изображение 23x73 с двумя разными цветами
- Непрерывный поток из 1679 элементов двух разных значений (т. Е. Любого из вышеперечисленных форматов, но плоский).
- 1679-битное целое число. Укажите порядок следования битов и байтов (порядковый номер) в вашем решении.
Для вашего удобства вот копируемая версия (также пример вывода в текстовом формате):
00000010101010000000000
00101000001010000000100
10001000100010010110010
10101010101010100100100
00000000000000000000000
00000000000011000000000
00000000001101000000000
00000000001101000000000
00000000010101000000000
00000000011111000000000
00000000000000000000000
11000011100011000011000
10000000000000110010000
11010001100011000011010
11111011111011111011111
00000000000000000000000
00010000000000000000010
00000000000000000000000
00001000000000000000001
11111000000000000011111
00000000000000000000000
11000011000011100011000
10000000100000000010000
11010000110001110011010
11111011111011111011111
00000000000000000000000
00010000001100000000010
00000000001100000000000
00001000001100000000001
11111000001100000011111
00000000001100000000000
00100000000100000000100
00010000001100000001000
00001100001100000010000
00000011000100001100000
00000000001100110000000
00000011000100001100000
00001100001100000010000
00010000001000000001000
00100000001100000000100
01000000001100000000100
01000000000100000001000
00100000001000000010000
00010000000000001100000
00001100000000110000000
00100011101011000000000
00100000001000000000000
00100000111110000000000
00100001011101001011011
00000010011100100111111
10111000011100000110111
00000000010100000111011
00100000010100000111111
00100000010100000110000
00100000110110000000000
00000000000000000000000
00111000001000000000000
00111010100010101010101
00111000000000101010100
00000000000000101000000
00000000111110000000000
00000011111111100000000
00001110000000111000000
00011000000000001100000
00110100000000010110000
01100110000000110011000
01000101000001010001000
01000100100010010001000
00000100010100010000000
00000100001000010000000
00000100000000010000000
00000001001010000000000
01111001111101001111000
Если по какой-то причине ваш язык имеет встроенную функцию для сообщения Аресибо, вы не можете использовать эту встроенную функцию.
Удачи!
ОБНОВЛЕНИЕ: Я принял ответ 05AB1E, так как он был первым, который был короче исходного сообщения. Не позволяйте этому отговорить вас от новых решений.
ОБНОВЛЕНИЕ 2019-09-09: Принятый ответ перемещен в новый ответ 05AB1E, так как он отменяет предыдущий ответ 05AB1E. То же самое относится и к предыдущему обновлению; новые решения по-прежнему приветствуются.