Виявляється, є деякі далекі прибульці, які знають англійську мову (і випадково стандартизовані у 8-бітовій архітектурі комп'ютера) . Проте вони ніколи не чули ні про ASCII, ні навіть за алфавітом.
Вважається, що ці прибульці забирають інформацію із Землі. Але вони роблять це з цифровим обладнанням, яке зчитує безглузду інформацію, коли не передається передача ... таким чином сигнал повинен міститися таким чином, щоб виділятися від навколишнього шуму.
Створено новий стандарт, модельований після використання повідомленнями Arecibo довжиною сигналу напівпрозорості:
Універсальне семіотичне кодування для обміну інформацією (USCII)
(Див.: Http://uscii.hostilefork.com )
У USCII кожен код походить від растрової карти, що представляє символ, що має простір і висоту простір. Наприклад, це 5x7 зображення букви A:
01110
10001
10001
10001
11111
10001
10001
Це дає 35 біт. Однак для того, щоб навіть односимвольні повідомлення виділялися від шуму та виглядали когерентними, рядки вбудовуються у формат контейнера, що сприяє посиленню основних факторів. Контейнер був обраний для полегшення маніпулювання рядками в архітектурах, які працюють на кратних 8 біт.
З його контейнером "A" вище виглядатиме так:
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
1111111111111111111111111111111111100000
1111111111111111111111111111111111100000
1111111111111111111111111111111111100000
1111111111111111111111111111111111100000
1111111111111111111111111111111111100000
0111010001100011000111111100011000100000
1111111111111111111111111111111111100000
1111111111111111111111111111111111100000
1111111111111111111111111111111111100000
1111111111111111111111111111111111100000
1111111111111111111111111111111111100000
1111111111111111111111111111111111100000
1111111111111111111111111111111111100000
1111111111111111111111111111111111111111
1111111111111111111111111111111111111111
1111111111111111111111111111111111111111
1111111111111111111111111111111111111111
1111111111111111111111111111111111111111
Персонажі повідомлення спочатку встановлюються п'ятьма твердими 5х7 растровими зображеннями, а до кінця додаються сім суцільних 5х7 растрових зображень. ( "Метр" .) Тоді кожен з них має п'ять 0 біт, приклеєних до кінця, щоб зробити парні 40 біт.
Нарешті, на початку додано 7 повністю-нульових 40-бітових запусків, а до кінця додано 5 все-один 40-бітових запусків. ( "Тиша" .)
Ваша місія
Ви повинні написати кодер. Вхід - це звичайний рядок ASCII, набраний з клавіатури. Використовувані растрові шрифти мають шрифт 5x7 PIC CPU .
(Примітка. Досить просто витягнути шрифт зі сторінки для всіх талановитих гольфістів коду тут, але якщо ви хочете, щоб ці байти були всі разом тут .)
Вихід повинен бути друкованим рядком у шістнадцятковій формі.
Приклади
Вхід :
ABCDEFG
Вихід :
0000000000000000000000000000000000000000000000000000000000000000000000FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE074631FC620F463E8C7C074610845C0E4A318CB80FC21E843E0FC21E84200746178C5E0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Вхід :
Dear aliens: Please get me off of this planet!!!
Вихід :
0000000000000000000000000000000000000000000000000000000000000000000000FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0E4A318CB80001D1FC1E0001C17C5E0002D9842000000000000001C17C5E061084211C00100421080001D1FC1E0002D98C620001F0707C003180630000000000000F463E8420061084211C0001D1FC1E0001C17C5E0001F0707C0001D1FC1E00000000000001F1787C0001D1FC1E0213E421440000000000000375AD620001D1FC1E00000000000001D18C5C01148E210801148E210800000000000001D18C5C01148E210800000000000213E4214408421E8C6200100421080001F0707C00000000000003D1F420061084211C0001C17C5E0002D98C620001D1FC1E0213E421440210840008021084000802108400080FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Роз'яснення
- Для цього завдання не потрібно обробляти жодних символів, які не можна роздрукувати (хоча відгуки про ідеї того, як вони можуть виглядати , вітаються)
Умови виграшу
0000000000000000000000000000000000000000000000000000000000000000000000FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE074610845C0001D18C5C00842F8C5E0001D1FC1E00000000000746178C5E0001D18C5C061084211C01148E21080210840008021084000802108400080FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFE0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF