Números de Sastry
Neste desafio, determine se um inteiro dado n é um número de Sastry. Se o número obtido ao concatenar um inteiro n com seu sucessor for um quadrado perfeito, então n é um número de Sastry.
Dado um inteiro positivo n, implemente um método que retorne true se n for um número de Sastry, ou false caso contrário.
Exemplos
Program.isSastry(183) ➞ true
// Concatenação de n com seu sucessor = 183184
// 183184 é um quadrado perfeito (428 ^ 2)
Program.isSastry(184) ➞ false
// Concatenação de n com seu sucessor = 184185
// 184185 não é um quadrado perfeito
Program.isSastry(106755) ➞ true
// Concatenação de n com seu sucessor = 106755106756
// 106755106756 é um quadrado perfeito (326734 ^ 2)Notas
- Um quadrado perfeito é um número cuja raiz quadrada é um número inteiro.
- A entrada sempre será um inteiro positivo válido maior que 0; não há casos excepcionais a tratar. Zero é um quadrado perfeito, mas a concatenação 00 não é considerada um resultado válido para verificar.
- O valor concatenado pode ultrapassar
long; use aritmética exata, comoBigInteger, em vez de aproximações de ponto flutuante.