Uns e zeros alternados

Escreva uma função que retorne True se a string binária puder ser reorganizada para formar uma string de 0s e 1s alternados.

Exemplos

can_alternate("0001111") ➞ True
# Pode formar: "1010101"

can_alternate("01001") ➞ True
# Pode formar: "01010"

can_alternate("010001") ➞ False

can_alternate("1111") ➞ False

Observações

  • Nenhuma substring da saída pode conter mais de um caractere repetido consecutivamente (e.g. Não são permitidos 00 nem 11).
  • Retorne False se uma string contiver apenas 0s ou apenas 1s.