A mensagem de Arecibo é uma mensagem de rádio interestelar de 1974, com informações básicas sobre a humanidade e a Terra, enviadas ao aglomerado de estrelas globulares M13, na esperança de que a inteligência extraterrestre possa recebê-la e decifrá-la ... A mensagem consistia em 1.679 dígitos binários, aproximadamente 210 bytes ...
O número 1.679 foi escolhido por ser um semiprime (o produto de dois números primos), para ser organizado retangularmente como 73 linhas por 23 colunas. O arranjo alternativo, 23 linhas por 73 colunas, produz um conjunto ininteligível de caracteres (assim como todos os outros formatos X / Y).
Esta é a mensagem com cor adicionada para destacar suas partes separadas. A transmissão binária real não carregava informações de cores.
Sua tarefa é gerar a mensagem Arecibo na organização exata de 23x73 mostrada na imagem. Qualquer um desses formatos de saída é aceitável:
- Texto, usando um caractere para uns e outro para zeros (usando as regras usuais para separação de linhas)
- Uma matriz 2D de dois valores distintos
- Uma imagem 23x73 com duas cores distintas
- Um fluxo ininterrupto de 1679 itens de dois valores distintos (ou seja, qualquer um dos formatos acima, mas simples).
- Um número inteiro de 1679 bits. Indique a ordem de bits e bytes (endianness) em sua solução.
Para sua comodidade, aqui está uma versão passível de cópia (também um exemplo de saída em formato de texto):
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
Se o seu idioma, por algum motivo, possuir um built-in para a Mensagem Arecibo, você não poderá usá-lo.
Boa sorte!
ATUALIZAÇÃO: Aceitei a resposta 05AB1E, pois era a primeira a ser mais curta que a mensagem original. Não deixe que isso dissuadi-lo de novas soluções.
ATUALIZAÇÃO 2019-09-09: A resposta aceita foi movida para uma nova resposta 05AB1E, pois obsoleta a resposta 05AB1E anterior. O mesmo ponto vale para a atualização anterior; novas soluções ainda são bem-vindas.