АКА: генерировать кликбэйт из массива.
Получив массив целых чисел, сгенерируйте достойную клинбита приманку на основе его расположения и длины:
- Если это 20 элементов или меньше, вы можете составить Top X List. Параметры: длина массива.
- Простые числа - это знаменитости, поэтому каждый раз, когда двое из них находятся рядом друг с другом, это становится сплетней. Параметры: два смежных простых числа в порядке их появления в массиве.
- Если какое-либо число встречается в массиве дважды или более, это шокирует и невероятно, и каждый должен услышать об этом. Если несколько номеров появляются дважды, создайте новостной сюжет для каждого из них. Напечатайте это только один раз для уникального номера. Параметры: вхождение числа, измеренного полным появлением.
- Если вы видите 3+ элемента в
отсортированноммонотонно возрастающем порядке с последующим внезапным уменьшением, расскажите о том, как они отсортированы, и дразните, что происходит дальше. Делайте это только один раз подряд. Параметры: длина прямой.
Вот соответствующие кликбэйты, которые вы должны использовать:
The Top {{N}} Array Elements
{{N1}} And {{N2}} Were Spotted Together, You Won't Believe What They Did
These {{N}} Elements Will Blow Your Mind
{{N}} Elements Sort Themselves, Find Out What Comes Next
Помните, что вы представляете дешевую медиа-компанию, поэтому вам нужно будет доить это и печатать все возможные названия. Если есть 2 одинаковых названия, напечатайте их обоих.
Например, если вам дан этот массив ...
1,2,3,4,2,1,1,5,6
Вы должны вывести все это в произвольном порядке:
The Top 9 Array Elements
2 And 3 Were Spotted Together, You Won't Believe What They Did
These 2 Elements Will Blow Your Mind
These 3 Elements Will Blow Your Mind
4 Elements Sort Themselves, Find Out What Comes Next
Обратите внимание на отсутствие этого названия:
3 Elements Sort Themselves, Find Out What Comes Next
Что касается кода гольфа, выигрывает самый короткий ответ в байтах.
Ответы:
Желе , 142 байта
Монадическая ссылка, принимающая список целых чисел, возвращающая список списков приманок (каждый из которых представляет собой список символов и целых чисел). Для полноценной печати программы нажатием кнопки с разделительной строкой просто добавьте
ẎY
в конец.Попробуйте онлайн! (Нижний колонтитул составляет один список приманок, а затем разделяет их новыми строками.)
... или посмотрите пример, приведенный в вопросе.
Как?
99 самых правых байтов этой ссылки образуют ниладу (функцию с нулевыми аргументами, то есть константой):
Давайте пометим эти текстовые части как
X
, теперь ссылка:источник
“...“...“...“...»
части кода, где вместо чисел стоят переводы строк - вот такJava 10,
467457456453 байтаПредполагается, что входной массив будет содержать значения
0 < N < 1000
([1,999]
).Попробуйте онлайн.
источник
JavaScript (Node.js) , 397 байт
Попробуйте онлайн!
источник
'!'
на' Elements '
(или похожий)?The Top * Array Elements
[5,10,5,10]
выводитьThese 2 Elements Will Blow Your Mind
дважды? Я думаю, что часть задания «Напечатайте это только один раз для уникального номера » означает числа,5
а10
не числоN=2
. Но, возможно, попросите OP проверить. Если второе, ваша реализация верна, а остальные три ответа неверны. Если первое, то только ваша реализация неверна.JavaScript (Node.js) ,
351350349347 байтПопробуйте онлайн!
источник