Вступление
26 августа 2017 года Флойд Мэйуэзер-младший встретится с Конором МакГрегором в поединке по боксу.
Оба участника получат феноменальную сумму в 100 миллионов долларов!
К сожалению, у нас пока нет денег, но мы уже можем подготовить большой портфель, который будет содержать все банкноты.
_________________________
| |
|=======================================|
| $ $$$$$ $$$$$ $ $ |
| $ $ $ $ $ $ $$$ $$$ |
| $ $ $ $ $ $ $$$ $ |
| $ $$$$$ $$$$$ $ $ |
|_______________________________________|
Портфель состоит из _
, |
, =
и $
.
Его размер составляет 41 символ в ширину (игнорируя символы новой строки) и 6 в высоту (+2 для дескриптора).
Вызов
При отсутствии ввода напишите полную программу для вывода 2D-портфеля (см. Выше).
Гол
Это код-гольф , поэтому выигрывает самое короткое (в байтах) решение.
Ответы:
Жевательная резинка, 55 байт
Вероятно, можно сделать магию удаления заголовка, но я не так хорош, как Деннис!
Попробуйте онлайн!
источник
Желе ,
9275 байтПопробуйте онлайн!
Как?
Шаг 1. Создайте список строк правой половины пустого портфеля, игнорируя завершающие пробелы:
Шаг 2: преобразовать это в целый пустой портфель:
Шаг 3: Покажите мне деньги!
источник
JavaScript (ES6),
187184 байтаКак?
Вывод построен с использованием этих 16 уникальных шаблонов:
демонстрация
Показать фрагмент кода
источник
05AB1E , 80 байтов
Попробуйте онлайн!
объяснение
Основные наброски портфеля:
05AB1E , 41 байт
Попробуйте онлайн!
Объяснение объяснения (часть первая):
Я преобразовал общий дизайн, разрезав его пополам, заменив все символы на 2-6 и, наконец, преобразовав его в основание 255 и восстановив форму, используя
5
в качестве разделителя новой строки.Является ли число, которое выражено в базе 255, и преобразование в базу 6 его ...
Затем, разделив это на пятерки, зеркальное отражение и присоединение к новым строкам, мы получим ...
Объяснение объяснения (часть вторая):
Начинаешь видеть, куда это идет? Затем я сжимаю внутренний шаблон как строку base-255:
Который:
Преобразовать в двоичный файл:
Для каждого из этих символов замените пробел следующим символом, итеративно:
Наконец, замените персонажей тем, кем они должны быть.
Для потери:
Сжимая его как два отдельных шаблона, я экономлю 20 байтов:
Который:
Преобразовано в базу-10:
92 байта плюс транслитерация, что составит около 105.
источник
СОГЛ ,
5857 байтОбъяснение:
Попробуй здесь!
54 байта ( соревнуются? )
Используемая здесь команда
╥
- palendromize, которая работала только со строками, но была задокументирована и для массивов . (в настоящее время это реализовано только на онлайн-переводчике)Попробуйте здесь!
источник
PHP, 117 байт
Мне грустно, что нет ничего короче ленивого подхода - распакуйте строку и закодируйте ее base64:
Пользовательское сжатие: 188 байт
168 164 159 152151 байт с адаптацией идеи :Строки можно рассматривать как растровое изображение между граничным символом (пробелы для первых двух, труба после этого), с пробелом как
0
и другим символом как1
.Инвертирующие строки 3 и 8 дали им значение
0
, поэтому я мог сдвинуть все значения на 6 бит.Массив содержит растровые изображения (преобразованные в базу 34; но только 7 значений - 8-й элемент опущен, пустой элемент оценивается как
0
). База 35 тоже подойдет; но база 33 имеет более длинные значения, а базе 36 потребуется еще одно значение в кавычках.Строка содержит границу
0
и1
символы в указанном порядке для каждой строки (пропуская последний символ, потому что строки 3 и 8 не нуждаются в1
символах, если бит не установлен).Пользовательское сжатие по Jörg,
159156 байт :источник
Желе , 114 байт
Попробуйте онлайн!
источник
Брайнгольф , 267 байт
Попробуйте онлайн!
Итак, гольф ...
источник
/// , 155 байт
Попробуйте онлайн!
Мне нравится, когда /// может соревноваться.
Объяснение:
Это работает путем определения общих замен, таких как
$$$$$
определение мета-замен, которые включают в себя оригинальные замены.Более подробно:
Прежде всего, единственная особенность /// - это
/pattern/replacement/
синтаксис и возможность использовать обратную косую черту, чтобы избежать других обратных и косых черт. Эта информация важна в объяснении.Первый шаблон / замена в коде предназначен только для игры в гольф (и подробно здесь ). Он заменяется
~
на//
, поэтому полученный код выглядит так:Затем производится куча базовых замен. Некоторые полагаются на другие (мета-замены), но таблица замен выглядит следующим образом (код, заключенный в
`
s):Мета-замены здесь такие вещи, как
/&/%$$/
. Это берет уже существующую замену$$$
и использует ее для определения новой замены$$$$$
.Тогда приходят очень большие замены. Первый заменяет
9
на,$ $ $ $ $ $
а второй заменяет8
на:Обратите внимание на конечные пробелы.
Затем все эти замены используются в следующей строке:
Чтобы получить желаемый результат.
источник
Python 2 ,
221 205 197 196193 байтаa="6ZBRS533| $"
иb="70JYF0U7|"
Попробуйте онлайн!
Объяснение:
Каждая строка имеет общую форму,
pup
гдеp
- это граничный символ, а u - строка с двумя уникальными символами (для каждой строки), которые могут быть представлены 1 и 0. Например, строка 5:| $ $ $ $ $ $ $$$ $$$ |
Это имеет | в качестве граничного символа и средней строки содержится только
и
$
. Средняя строка может быть представлена:111011101101110110111011000111000111111
Теперь эта двоичная строка может быть представлена 36-значным числом:
6JNFT2RJ
Мы можем представить все строки определенной строкой вместе с 36-базовой строкой, граничным символом и символами, используемыми в средней строке, следующим образом:
Таким образом, мы можем распаковать строку base-36 (после извлечения ее из определяющей строки) в двоичную строку, заменить 1 и 0 символами (также полученными из определяющей строки), используемыми в средней строке, и склеить граничные символы на обоих концах , Таким образом, искомая строка получена.
источник
C
415402397 байтПопробуйте онлайн!
источник
Сетчатка ,
140137129 байт-3 байта благодаря @Neil
Попробуйте онлайн!
источник
1
s ни для чего другого, не можете ли вы написать$*<space>
напрямую?C (gcc) ,
388386302 байтаПопробуйте онлайн!
источник
05AB1E , 121 байт
Попробуйте онлайн!
источник
JavaScript (ES6),
177166 байтСтрока содержит коллекцию символов для отображения, а также количество повторений. Если символ не повторяется, количество раз может быть опущено.
Повторяющиеся цепочки строк оптимизируются путем сохранения в переменных
r
иs
.Отрывок:
источник
Python 2 , 135 байт
Попробуйте онлайн!
источник
Древесный уголь , 52 байта
Попробуйте онлайн! Ссылка на подробную версию кода. Объяснение:
Распечатайте левую половину портфеля.
Подготовьте курсор так, чтобы сжатая строка могла быть напечатана непосредственно после отражения. (Помещение движения вниз после отражения или до того, как сжатая строка меняет их значение.)
Подумайте, чтобы завершить портфель.
Выведите сумму в виде сжатой строки. (К сожалению, это был самый короткий подход, так как в противном случае
M
потребляется слишком много байтов.)источник