Если задано натуральное число n
, верните n
-й номер Лейланда .
Номер лейланд
Числа Лейланда являются положительными целыми числами k
вида
k = x^y + y^x
Где x,y
целые числа строго больше 1.
Они перечислены в порядке возрастания.
РЕДАКТИРОВАТЬ: @DigitalTrauma предложил включить следующее «определение»:
Представьте, что мы добавляем
x^y+y^x
в сумку все возможные значенияx
иy
и избегаем дублирования. Затем мы сортируем эту сумку. Сортированная сумка - наша последовательность.
Детали
Вы можете использовать индексацию на основе 0 или 1, что вам больше подходит.
Ваша программа должна быть в состоянии вывести по крайней мере все числа Лейланда меньше, чем максимум 32-разрядных целых чисел со знаком. (Последнее число Лейланда ниже этого предела - 1996813914
по индексу 82
.)
Контрольные примеры
Первые несколько терминов следующие:
8, 17, 32, 54, 57, 100, 145, 177, 320, 368, 512, 593, 945, 1124
A076980 в OEIS, кроме первой записи. Обратите внимание, что из-за этой дополнительной первой записи индексы в OEIS сдвинуты на единицу.
Больше можно найти в b-файле OEIS
8
что раньше 17
, а не наоборот.
x^y+y^x
сумку для всех возможных значений x
и y
и избегаем дублирования. Затем мы сортируем эту сумку. Сортированная сумка - наша последовательность.
They are enumerated in ascending order
Я не совсем уверен, что это значит. Не могли бы вы предоставить список х и у?