Unos y ceros alternados

Escribe una función que devuelva true si la cadena binaria se puede reorganizar para formar una cadena con 0s y 1s alternados.

Ejemplos

can_alternate("0001111") ➞ true
# Se puede formar: "1010101"

can_alternate("01001") ➞ true
# Se puede formar: "01010"

can_alternate("010001") ➞ false

can_alternate("1111") ➞ false

Notas

  • Ninguna subcadena de la salida puede contener más de un carácter repetido consecutivamente (e.g. No se permiten 00 ni 11).
  • Devuelve false si una cadena contiene únicamente 0s o únicamente 1s.