Problema
Decida se os dígitos decimais de n são lidos da mesma forma da esquerda para a direita e da direita para a esquerda. Números negativos nunca são palíndromos por causa do sinal de menos.
Implemente is_palindrome_number(n).
Entrada
n: O número a ser verificado.
Saída
Retorne true para um número palíndromo, caso contrário false.
Restrições
-10¹⁸ ≤ n ≤ 10¹⁸
Exemplos
Entrada:
n = 12321
Saída esperada:
expected = True
Entrada:
long long n = 12321;
Saída esperada:
bool expected = true;
Entrada:
long n = 12321;
Saída esperada:
bool expected = true;
Explicação
12321 invertido é 12321.
Entrada:
n = -121
Saída esperada:
expected = False
Entrada:
long long n = -121;
Saída esperada:
bool expected = false;
Entrada:
long n = -121;
Saída esperada:
bool expected = false;
Explicação
O sinal de menos faz com que "-121" seja diferente de "121-".
Como abordar
Tente sozinho primeiro e depois abra uma dica de cada vez.
Dica 1
Um número negativo não pode ser palíndromo por causa do sinal de menos.
Dica 2
Compare os dígitos do número dos dois lados em vez de converter sem necessidade.
Dica 3
Números de um dígito sempre são palíndromos.
Complexidade esperada
tempo O(log n), espaço extra O(1)
Referências
Este desafio foi adaptado para o CodeUtility. Siga o enunciado e as restrições acima.