Números apocalípticos

Published by Matt in

En este desafío, debes determinar si un número es apocalíptico. Un entero positivo n mayor que 0 es apocalíptico cuando 2 elevado a n contiene una o más apariciones de 666 dentro de él.

Dado un entero n, implementa una función que devuelva:

  • "Safe" si n no es apocalíptico.
  • "Single" si dentro de 2^n hay una sola aparición de 666.
  • "Double" si dentro de 2^n hay dos apariciones de 666.
  • "Triple" si dentro de 2^n hay tres apariciones de 666.

Ejemplos

is_apocalyptic(66) ➞ "Safe"
# 2^66 = 73786976294838206464

is_apocalyptic(157) ➞ "Single"
# 2^157 =
# 182687704|666|362864775460604089535377456991567872

is_apocalyptic(220) ➞ "Double"
# 2^220 =
# 168499|666|66969149871|666|8844293872691710232152640 ...

is_apocalyptic(931) ➞ "Triple"
# 2^931 =
# 181520618710|666|8777829|666|135436890332191479738353753001777065257954029122510259245050254290156440857653562895251700406555730694879815558725330603736697259064676478076718090|666| ...

Notas

  • Cualquier n dado será un entero positivo en el rango de 1 a 1000.
  • Cuenta las apariciones que no se superpongan. Un dígito no puede pertenecer a dos coincidencias (consulta el ejemplo #3: cinco 6 adyacentes contienen solo un 666 que no se superpone).