Números simples

Mubashir precisa da sua ajuda para encontrar os números simples em um determinado intervalo.

Um número X com N algarismos, que chamaremos de d1, d2, ..., dN, é simples se esta equação for verdadeira:

X = d1^1 + d2^2 + ... + dN^N

Exemplos de números simples

89 = 8^1 + 9^2

135 = 1^1 + 3^2 + 5^3

Crie uma função que retorne um array de inteiros contendo todos os números simples no intervalo inclusivo de a a b.

  1. Gere os números de a até b.
  2. Mantenha apenas os números simples.
  3. Para determinar se um número é simples:
    1. Separe-o em seus algarismos individuais.
    2. Eleve cada algarismo à potência correspondente à sua posição, começando pela primeira.
    3. Some esses resultados e compare a soma com o número original.

Exemplos

Program.simpleNumbers(1, 10) ➞ new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9}
Program.simpleNumbers(1, 100) ➞ new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 89}
Program.simpleNumbers(90, 100) ➞ new int[]{}

Observações

N/A