Dado um número natural n
, retorne o n
-th número de Leyland .
Número Leyland
Os números de Leyland são números inteiros positivos k
da forma
k = x^y + y^x
Onde x,y
são números inteiros estritamente maiores que 1.
Eles são enumerados em ordem crescente.
EDIT: @DigitalTrauma sugeriu que eu incluísse a seguinte "definição":
Imagine que jogar
x^y+y^x
em um saco para todos os valores possíveis dex
ey
, e jogando evitar em duplicatas. Então nós separamos a sacola. A bolsa classificada é a nossa sequência.
Detalhes
Você pode usar a indexação baseada em 0 ou 1, o que melhor lhe convier.
Seu programa deve ser capaz de gerar pelo menos todos os números de Leyland menores que o máximo de números inteiros de 32 bits assinados. (O último número de Leyland abaixo desse limite é 1996813914
, no índice 82
.)
Casos de teste
Os primeiros termos são os seguintes:
8, 17, 32, 54, 57, 100, 145, 177, 320, 368, 512, 593, 945, 1124
A076980 no OEIS, exceto a primeira entrada. Observe que, devido a essa primeira entrada adicional, os índices no OEIS são alterados em um.
8
é antes 17
, e não o contrário.
x^y+y^x
em um saco para todos os valores possíveis de x
e y
e thrwoing evitar em duplicatas. Então nós separamos a sacola. A bolsa classificada é a nossa sequência.
They are enumerated in ascending order
Não tenho muita certeza do que isso significa. Você poderia fornecer uma lista de x e y?