У цьому пікселізованому шрифті великих літер алфавіту всі символи шириною 5 одиниць та 5 заввишки.
███ ████ ███ ████ █████ █████ ████ █ █ █████ █ █ █ █ █ █
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ ██ ██
█████ ████ █ █ █ ████ ████ █ ██ █████ █ █ ███ █ █ █ █
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █ ████ ███ ████ █████ █ ████ █ █ █████ ███ █ █ █████ █ █
█ █ ███ ████ ███ ████ ████ █████ █ █ █ █ █ █ █ █ █ █ █████
██ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █ █ █ █ ████ █ █ ████ ███ █ █ █ █ █ █ █ █ █ █ █
█ ██ █ █ █ █ ██ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █ ███ █ ████ █ █ ████ █ ███ █ █ █ █ █ █ █████
Між літерами та між рядками також є 1 одиниця простору, як видно. Таким чином, кожна літера може займати до 6 × 6 одиниць місця.
Припустимо, що замість того, щоб використовувати повний символ символу ( █
), щоб безпосередньо сформувати форми літер, ми хотіли використовувати інші літери тим самим шрифтом . Це передбачає збільшення розмірів тексту в 6 разів, так що літери, виготовлені з повних блоків, можуть бути використані як заміни повного блоку у більшому тексті.
Якщо це не має сенсу, сподіваємось, цей приклад буде. Ось A, виготовлений з B, використовуючи пікселізований шрифт:
████ ████ ████
█ █ █ █ █ █
████ ████ ████
█ █ █ █ █ █
████ ████ ████
████ ████
█ █ █ █
████ ████
█ █ █ █
████ ████
████ ████ ████ ████ ████
█ █ █ █ █ █ █ █ █ █
████ ████ ████ ████ ████
█ █ █ █ █ █ █ █ █ █
████ ████ ████ ████ ████
████ ████
█ █ █ █
████ ████
█ █ █ █
████ ████
████ ████
█ █ █ █
████ ████
█ █ █ █
████ ████
B виготовлені з повних блоків, а A - з B. Зауважте, що у B все ще є одна одиниця між ними по горизонталі та вертикалі.
Ми можемо поширити цю ідею, використовуючи слова, а не просто букви. Ось "ВОДА" виготовлена з "ВАЖУ":
█████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████ █ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █
█████ █████ ████ █████ █████ █████ ████ █████
█ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████
█ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████
█████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █
█████ █████ ████ █████ █████ █████ ████ █████ █████
█ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████
█ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █
█████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████
Зауважте, як "FIRE" відображається неодноразово в кожному рядку та завжди в порядку, незалежно від того, скільки місця буде між літерами. Три найправіші екземпляри "ПОЖАР" були відрізані рано через те, як формуються літери "ВОДА".
Цю думку можна розширити ще більше, використовуючи ці слова, складені зі слів, щоб слова скласти зі слів , або навіть слова, складені зі слів, зроблені зі слів . Теоретично немає меж.
Інший приклад може поставити цю публікацію за межу символу 30k, але ви можете побачити, що означає "слова, складені зі слів", виконавши цей чудовий фрагмент стека. Просто залиште параметри за замовчуванням і натисніть «Перейти!». Ви повинні побачити слово "КУЧКА", виготовлене із слова "КОТ", виготовлене із слова "МОЗ".
Ввівши будь-який розділений пробілом список слів, що містять лише великі літери у текстовому полі, вийде перше слово, виготовлене з другого слова, зробленого з третього, з четвертого, виготовленого з ... і т.д.
ПОПЕРЕДЖЕННЯ: Введення більш ніж 4 або навіть 3 слів призведе до багато тексту та займе довгий час. Це може зламати ваш браузер / комп’ютер / автомобіль.
Виклик
Мета цього виклику - відобразити те, що робить фрагмент стека у найменшій кількості символів.
Ви повинні написати програму, яка містить пробіл із розділеним пробілом слів, що містить лише великі літери, і виводить перше слово "з" другого "з" третього тощо ", використовуючи пікселізований шрифт, поданий вище.
У вашій програмі не потрібно підтримувати прапорець "Звичайний ASCII" та функції розміру шрифту фрагмента. Дзеркальне перетворення від списків слів до слів, складених із слів, є головним моментом і єдиною вимогою.
Деталі
Введення має надходити з stdin, командного рядка, або ви можете просто написати функцію, яка займає рядок.
Ви можете припустити, що введення завжди дійсне, тобто рядок слів з великої літери, розділених рівно одним пробілом, без провідних чи кінцевих пробілів.
Вихід повинен перейти до stdout (або подібної альтернативи) або до файлу з назвою на вибір.
Висновок повинен складатися цілком з пустого простору символів , повні прогалин і перекладів рядків.
- У порожній / повний прогалини повинні бути або пробіл і повний блок (
,
█
) відповідно, або період і Х (.
,X
) відповідно.
- У порожній / повний прогалини повинні бути або пробіл і повний блок (
Вихідні дані не повинні містити жодних провідних стовпців, що містять лише символи порожнього простору , хоча дозволено будь-яку комбінацію символів з порожнього простору в будь-яких рядках.
Отже, це дозволено:
X...X.XXXXX.. X...X.X X.X.X.XXXX.... X.X.X.X.. .X.X..XXXXX..
Але це не так:
.X...X.XXXXX.. .X...X.X .X.X.X.XXXX.... .X.X.X.X.. ..X.X..XXXXX..
Не повинно бути провідних чи кінцевих рядків, що містять лише символи порожнього простору . Необов’язково допускається одна окрема нова строка.
Ось більш зручна версія шрифту:
.XXX.
X...X
XXXXX
X...X
X...X
XXXX.
X...X
XXXX.
X...X
XXXX.
.XXX.
X...X
X....
X...X
.XXX.
XXXX.
X...X
X...X
X...X
XXXX.
XXXXX
X....
XXXX.
X....
XXXXX
XXXXX
X....
XXXX.
X....
X....
.XXXX
X....
X..XX
X...X
.XXXX
X...X
X...X
XXXXX
X...X
X...X
XXXXX
..X..
..X..
..X..
XXXXX
....X
....X
....X
X...X
.XXX.
X...X
X..X.
XXX..
X..X.
X...X
X....
X....
X....
X....
XXXXX
X...X
XX.XX
X.X.X
X...X
X...X
X...X
XX..X
X.X.X
X..XX
X...X
.XXX.
X...X
X...X
X...X
.XXX.
XXXX.
X...X
XXXX.
X....
X....
.XXX.
X...X
X...X
X..XX
.XXXX
XXXX.
X...X
XXXX.
X..X.
X...X
.XXXX
X....
.XXX.
....X
XXXX.
XXXXX
..X..
..X..
..X..
..X..
X...X
X...X
X...X
X...X
.XXX.
X...X
X...X
.X.X.
.X.X.
..X..
X...X
X...X
X.X.X
X.X.X
.X.X.
X...X
.X.X.
..X..
.X.X.
X...X
X...X
.X.X.
..X..
..X..
..X..
XXXXX
...X.
..X..
.X...
XXXXX
Оцінка балів
Це код-гольф, тому найкоротше подання в байтах виграє. Будь-який екземпляр повного блоку ( █
) може бути зарахований як 1 байт замість 3, тому подання, яке використовує X
, не має переваги.
$('#question pre, .answer pre').css('line-height',1)
javascript:
У рядку URL і вставити його) , щоб зробити ASCII мистецтво тут багато, набагато легше читати:$('#question pre').css('line-height',1)
. Результат: i.stack.imgur.com/XmB8C.png