Введение
Последовательность OEIS A127421 - это последовательность чисел, десятичное разложение которых представляет собой конкатенацию 2 последовательных возрастающих неотрицательных чисел. Проще говоря, каждое число в последовательности формируется путем объединения n с n + 1 для некоторого неотрицательного целочисленного значения n . Первые несколько терминов:
1, 12, 23, 34, 45, 56, 67, 78, 89, 910, 1011, 1112, 1213, 1314, 1415, 1516, 1617, 1718, 1819, 1920, 2021, 2122, 2223, 2324, 2425, 2526, 2627, 2728, 2829, 2930, 3031, 3132, 3233, 3334, 3435, 3536, 3637, 3738, 3839, 3940, 4041, 4142, 4243, 4344, 4445, 4546,…
Вызов
Учитывая одно положительное целое число n , выведите первые n записей последовательности OEIS A127421 в порядке возрастания.
- Ввод и вывод могут быть в любом приемлемом формате . Строки или числа хороши для вывода.
- Ведущие нули не допускаются.
- Допускается либо полная программа, либо функция.
- Для целей этой задачи n будет положительным и меньше 100.
- Стандартные лазейки по умолчанию запрещены.
- Этот вопрос относится к коду гольфа, поэтому побеждает меньшее количество байт.
Вот некоторые примеры ввода и вывода:
1 => 1 2 => 1, 12 3 => 1, 12, 23 10 => 1, 12, 23, 34, 45, 56, 67, 78, 89, 910
Если у вас есть какие-либо вопросы, не стесняйтесь спрашивать. Удачи.
PS Это мой первый вызов, так что, надеюсь, все это имеет смысл.
РЕДАКТИРОВАТЬ: снято ограничение вывода для разрешения чисел или строк.
Ответы:
Желе , 3 байта
Монадическая ссылка, принимающая целое число, которое дает список целых чисел
Попробуйте онлайн!
Как?
источник
R , 32 байта
Попробуйте онлайн!
Перехитрил MickyT , так что иди, проголосуй за этот ответ!
источник
0
с первого выхода.[-1]
вместо использования,strtoi
или это терпит неудачу в некотором крайнем случае или другом?strtoi
используется для преобразования из"01"
в,1
потомуpaste0
что вернется,c("01","12","23","34",...)
и нам не разрешено возвращаться"01"
.1
Python 3 , 39 байт
Попробуйте онлайн!
источник
f-strings
можно использовать для игры в гольф! Хорошая идея.Haskell,
3837 байтПопробуйте онлайн!
Спасибо Cat Wizard за байт!
источник
<$>
в качестве заменыmap
.Cubix , 19 байт
Попробуйте онлайн!
Это оборачивает на куб следующим образом
Смотреть это работает
Есть небольшая комната, чтобы поиграть еще, но на данный момент
W
перенаправить на верхнюю сторону внизI1>
установить стек с вводом и 1, а затем перенаправить в основной циклOSo;u
вывести верхнюю часть стека, добавить пространство в стек, вывести, удалить и перевернуть-!@;Ou)
вычтите TOS из входных данных, если 0 остановите, иначе выведите результат, выведите TOS, uturn и увеличьте TOS. Вернуться в основной цикл.источник
Perl 6 ,
1918 байтПопробуйте онлайн!
Блок анонимного кода, который архивирует диапазон от 0 до n-1 с 1 до n, используя оператор конкатенации, затем добавляет 0 к каждому элементу, чтобы принудительно преобразовать его в число и удалить начальные 0.
источник
R ,
3029 байтДополнительный байт благодаря @Giuseppe
Попробуйте онлайн!
В основном математическое решение, за исключением использования,
nchar()
а неfloor(log10())
. Я был очень удивлен, что он оказался короче, чем струнная версия.источник
APL (Dyalog) ,
1312 байт1 байт сохранен благодаря @FrownyFrog
Попробуйте онлайн!
источник
(⍎⍕,∘⍕1∘+)¨⍳
Брахилог , 6 байт
Попробуйте онлайн!
объяснение
источник
Python 2 ,
4241 байтПопробуйте онлайн!
Рекурсивная функция, которая возвращает смешанный список строк и целых чисел
источник
n and
Haskell , 34 байта
Попробуйте онлайн!
источник
Blossom , 88 байт
Blossom - это язык графического программирования, над которым я работаю. Он может принимать только графы в качестве входных данных, поэтому эта программа ожидает граф, содержащий один узел с его меткой целым числом. Он возвращает граф связанных ребер, чтобы сформировать ближайший к массиву, который я могу получить, и результирующий граф печатается для вывода.
Незавершенная версия кода такова:
Он определяет два правила: одно вызываемое
expand
, которое (в то время как в текущем графе есть узел с целочисленной меткой) создает другой узел с сцепленным приращением и понижает значение. Это также создает грань между этими двумя узлами. Это правило также имеет условие, что х больше 0.В
!
исполняет это правило, пока он может быть применен на графике, так что в этом случае он будет выполняться до тех пор , пока х равно 0. И тогдаclean
правило удаляет этот 0 узел и его края.Blossom не был создан для игры в гольф, но, думаю, не так уж плохо, учитывая, что это такое. В настоящее время нет действительно простого способа протестировать цветовой код (и интерпретатор, над которым я сейчас работаю, не совсем закончен и немного глючит), но это не совсем конкурирующая запись!
источник
JavaScript (Node.js) , 25 байт
Попробуйте онлайн!
источник
f=n=>--n?[f(n),n]+-~n:1
Шекспир , 703 байта
попробуйте здесь
негольфированная версия
источник
Groovy , 35 байт
Попробуйте онлайн!
В последнюю минуту я пришел с идеей использовать * .with вместо .collect. Я понятия не имею, что
it+++it
анализирует, но,it++ + it
илиit + ++it
они оба делают одно и то же. Я пытался придумать способ избавиться от <in .. <, превратив его в 1..it и уменьшив, но не думаю, что он станет немного короче.источник
a+++b
, этот тест предполагает, что он анализируется слева направо, что означает(a++)+b
.C (gcc) ,
4443 байтаПопробуйте онлайн!
источник
%m$
формата "обозначает позицию в списке аргументов желаемого аргумента, проиндексированную, начиная с 1" (printf(3)
страница руководства ) . Это очень удобно, если ваша библиотека C поддерживает это!%d%d
(и переключение порядка аргументов) не работает. (Я попробовал, но не знаю, почему он не производит вывод.)" %d%d"
должно иметь+3*!f(i)
; в противном случае смещение +5 указывает на NUL в конце строки.)i+1
, а неi
. Очень интересно.Pyth ,
986 байтПопробуйте онлайн!
Объяснение:
источник
Желе , 4 байта
Попробуйте онлайн!
Как это работает
источник
Python 2 , 44 байта
Попробуйте онлайн!
источник
05AB1E , 6 байтов
Попробуйте онлайн!
объяснение
LεD<ìï
будет работать для того же количества байтов, но с выводом спискаисточник
APL (Dyalog Classic) , 9 байтов
Попробуйте онлайн!
источник
Haskell , 37 байт
Попробуйте онлайн!
источник
Japt
-m
,65 байтПопробуйте онлайн!
Как всегда, знайте флаги .
Распаковано и как это работает
источник
ó
не работает здесь без2
.C # (интерактивный компилятор Visual C #) ,
103716456 байтГольф Попробуйте онлайн!
Ungolfed
Полный код
Старые версии:
v1.2, 64 байта
v1.1, 71 байт
v1.0, 103 байта
релизы
- 8 bytes
- УдаленоConsole
спасибо еще разнагул- 7 bytes
- УдаленоSystem
благодаря разнагул-32 bytes
103 bytes
- Исходное решение.Заметки
источник
System.Console
. Таким образом, вы можете сохранить 15 байтов, удалив его.Console.
: TiOJ, 14 байт
Попробуйте онлайн!
источник
2,&.":/\i.@>:
для 13 байтов. Попробуйте онлайн!ABAP, 101 байт
Не совсем язык игры в гольф, но мне очень нравится
W - входной член, X - счетчик от 1, Y - X-1 со второго прохода, Z - сцепленная строка.
источник
Powershell,
2726 байт-1 байт: спасибо AdmBorkBork
Тестовый скрипт:
источник
1.."$args"
Вместо этого вы можете сохранить байт .Python 2 , 41 байт
Попробуйте онлайн!
источник
PHP,
3332 байтаПопробуйте онлайн
Старая версия
источник
Javascript, 43
44,46,49,53байтаПредыдущие версии :
Сохранено 3 байта благодаря решению @ Shaggy (которое лучше моего) для удаления
.keys()
источник