Вступление
24 марта 2015 года @isaacg добавил свой ответ Pyth с 44 до 42 байтов. Поскольку вычеркнутая 44 ( 44 ) очень похожа на обычную 44, @Optimizer сделал следующий комментарий:
После этого, 21 октября 2015 года, @ Doorknob ♦ обработал свой ответ Ruby с 44 до 40 (и более поздних 38) байтов и добавил следующую часть в свой ответ со ссылкой на этот оригинальный комментарий @Optimizer :
Это было начало мема цепочки ответов , где каждый зачеркнутый 44 (а в некоторых случаях 4 или 444) был связан с предыдущим.
Затем, 8 апреля 2017 года (я не уверен, что это был первый ответ, но это самый ранний ответ, который я смог найти), @JonathanAllan проиграл свой ответ на Python с 44 по 39. Однако он использовал <s> 44 </s>
44 выглядеть следующим образом: 44 , и добавил следующее к своему ответу:
Вычеркнуто 44 & NBSP; больше не 44 :)
И это было в основном (начало) конца мема.
Вызов
Что касается этой задачи: учитывая список натуральных чисел и дату, выведите список через запятую, разделенный пробелом, где каждое число, кроме последнего, находится между <s>...</s>
тегами.
Кроме того, если любое из перечеркнутых чисел находится в последовательности [4, 44, 444, 4444, ...]
( A00278 на oeis.org ):
- Если дата до 8 апреля 2017 года: также выведите точный текст
crossed out N is still regular N ;(
( все строчные и с точкой с запятой) (N
) во второй строке это перечеркнутый номер из последовательности). - Если дата 8 апреля 2017 года или позже: зачеркнутый номер
N
из последовательности должен иметь начальные и конечные
знаки. Не нужно никаких дополнительных строк вывода.
Примеры:
Вход: list = [50, 48, 44, 41]
, date = January 1st, 2017
выход:
<s>50</s>, <s>48</s>, <s>44</s>, 41
crossed out 44 is still regular 44 ;(
Вход: list = [500, 475, 444, 301, 248]
, date = June 2nd, 2018
выход:
<s>500</s>, <s>475</s>, <s> 444 </s>, <s>301</s>, 248
Правила соревнований:
- Можно предположить, что входной список представляет собой отсортированный список от наибольшего к наименьшему, содержащий только положительные целые числа. На самом деле количество байт также может увеличиваться из-за исправлений ошибок, но ради этого вызова мы притворяемся, что оно только снижается.
- Можно предположить, что
[4, 44, 444, 4444, ...]
во входном списке присутствует только одно число из последовательности (если есть). - Выходной формат либо печатается в STDOUT, либо возвращается в виде строки (или символьного массива / списка / 2D-массива, если это предпочтительно). Завершающий перевод строки, конечно, не является обязательным.
- Формат вывода строгий.
<s>...</s>
является обязательным; ...
является обязательным;", "
(запятая и пробел) является обязательным; и\ncrossed out ... is still regular ... ;(
именно обязательно (на отдельной строке). - Вы можете принять входную дату как объекты даты; метки времени; свободные целые числа для года, месяца и дня; одно число в формате
yyyyMMdd
; целые дни с 31 декабря 1899 года (42832
8 апреля 2017 года); или любой другой разумный формат ввода. Дата if-Statement не является основной частью этой задачи. - Входной целочисленный список также может быть списком строк, если хотите.
- Вам не нужно добавлять
<sup>...</sup>
теги кcrossed out ... is still regular ... ;(
строку, как это обычно делается с реальными ответами на мемы. - Вы можете предположить, что входной список никогда не будет содержать счетчиков байтов за пределами
[1, 50000]
диапазона (поэтому вам придется{4, 44, 444, 4444, 44444}
беспокоиться только об этих пяти ).
Основные правила:
- Это код-гольф , поэтому выигрывает самый короткий ответ в байтах.
Не позволяйте языкам кода-гольфа отговаривать вас от публикации ответов на языках, не относящихся к кодексу. Попробуйте придумать как можно более короткий ответ для «любого» языка программирования. - К вашему ответу применяются стандартные правила , поэтому вы можете использовать STDIN / STDOUT, функции / метод с правильными параметрами и типом возврата, полные программы. Ваш звонок.
- По умолчанию лазейки запрещены.
- Если возможно, добавьте ссылку с тестом для вашего кода.
- Кроме того, добавление объяснения для вашего ответа настоятельно рекомендуется.
Тестовые случаи:
Input: [50, 48, 44, 41] and January 1st, 2017
Output:
<s>50</s>, <s>48</s>, <s>44</s>, 41
crossed out 44 is still regular 44 ;(
Input: [500, 475, 444, 301, 248] and June 2nd, 2018
Output:
<s>500</s>, <s>475</s>, <s> 444 </s>, <s>301</s>, 248
Input: [8, 6, 4] and December 5th, 2017
Output:
<s>8</s>, <s>6</s>, 4
Input: [8, 6, 4, 3, 2] and September 15th, 2015
Output:
<s>8</s>, <s>6</s>, <s>4</s>, <s>3</s>, 2
crossed out 4 is still regular 4 ;(
Input: [119, 99, 84, 82, 74, 60, 51, 44, 36, 34] and February 29th, 2016
Output:
<s>119</s>, <s>99</s>, <s>84</s>, <s>82</s>, <s>74</s>, <s>60</s>, <s>51</s>, <s>44</s>, <s>36</s>, 34
crossed out 44 is still regular 44 ;(
Input: [404, 123, 44] and March 4th, 2016
Output:
<s>404</s>, <s>123</s>, 44
Input: [4, 3] and April 8th, 2017
Output:
<s> 4 </s>, 3
Input: [44] and October 22nd, 2017
Output:
44
Input: [50000, 44444, 1500] and August 1st, 2018
Output:
<s>50000</s>, <s> 44444 </s>, 1500
Input: 50, 38, 23 and September 8th, 2001
Output:
<s>50</s>, <s>38</s>, 23
1889-12-31
, можем ли мы также принимать дни с тех пор 2017-04-08
?