Números de Sastry

Neste desafio, determine se um número inteiro n é um número de Sastry. Se o número formado ao escrever um inteiro positivo n seguido imediatamente de seu sucessor n + 1 for um quadrado perfeito, então n é um número de Sastry.

Dado um inteiro positivo válido, retorne true se ele for um número de Sastry e false caso contrário. Aqui, concatenar significa juntar os dígitos decimais, sem somar nem multiplicar os dois valores.

Exemplos

isSastry(183LL); // true
// Ao concatenar 183 com seu sucessor, obtemos 183184.
// 183184 é um quadrado perfeito: 428².
isSastry(184LL); // false
// Ao concatenar 184 com seu sucessor, obtemos 184185.
// 184185 não é um quadrado perfeito.
isSastry(106755LL); // true
// Ao concatenar 106755 com seu sucessor, obtemos 106755106756.
// 106755106756 é um quadrado perfeito: 326734².

Notas

  • Um quadrado perfeito é um número cuja raiz quadrada é um inteiro.
  • As entradas são inteiros positivos válidos maiores que zero; não há casos excepcionais a tratar. Embora zero seja um quadrado perfeito, a concatenação 00 não é considerada um valor válido neste desafio.
  • A entrada cabe no tipo do parâmetro fornecido, mas o valor concatenado pode ser muito maior. Verifique o resultado sem perder a precisão dos números inteiros.