Problema
Ver original (inglês)Um número com k dígitos é um número de Armstrong se a soma de cada dígito elevado à potência k for igual ao próprio número. Por exemplo, 153 = 1³ + 5³ + 3³.
Implemente is_armstrong(n).
Entrada
n: Um inteiro não negativo.
Saída
Retorne true se n for um número de Armstrong.
Restrições
0 ≤ n ≤ 10¹⁸
Exemplos
Exemplo 1
Entrada:
n = 153
Saída esperada:
expected = True
Entrada:
long long n = 153;
Saída esperada:
bool expected = true;
Entrada:
long n = 153;
Saída esperada:
bool expected = true;
Explicação
1³ + 5³ + 3³ = 1 + 125 + 27 = 153.
Exemplo 2
Entrada:
n = 10
Saída esperada:
expected = False
Entrada:
long long n = 10;
Saída esperada:
bool expected = false;
Entrada:
long n = 10;
Saída esperada:
bool expected = false;
Explicação
1² + 0² = 1, que não é 10.
Referências
Este desafio foi adaptado para o CodeUtility. Siga o enunciado e as restrições acima.