Pegue uma string scontendo caracteres ASCII imprimíveis como entrada e produza sua "soma binária dividida". Precisa de uma explicação?
Como você obtém a soma binária dividida?
Usaremos a string A4como exemplo na explicação a seguir.
Converta os caracteres em binários, tratando cada letra como um caractere ASCII de 7 bits
A -> ASCII 65 -> 1000001 4 -> ASCII 52 -> 0110100Concatenar os números binários em um novo número binário
A4 -> 1000001 & 0110100 -> 10000010110100Divida o novo número binário em blocos, onde nenhum
1pode ter um0à esquerda. Você não deve dividir1s consecutivos .10000010110100 -> 100000, 10, 110, 100Converta esses números binários em decimal
100000, 10, 110, 100 -> 32, 2, 6, 4Tome a soma destes números:
32 + 2 + 6 + 4 = 44
Portanto, a saída para a string A4deve ser 44.
Casos de teste:
a
49
A4
44
codegolf
570
Hello, World!
795
8372na verdade.