Operações com Strings: Codificação em Base32

Neste exercício, você colocará em prática alguns conhecimentos de operações bit a bit, manipulação de strings e de codificação através da representação de uma string ASCII em Base32.

Base32 é um grupo de esquemas de codificação binária para texto que representa uma sequência binária como uma string ASCII por meio da tradução para uma representação radix-32.

Cada dígito Base32 representa exatamente 5 bits de dados (25=322^5 = 32). Um agrupamento de 5 bytes de entrada (40 bits) pode ser representado por 8 dígitos Base32 (cada dígito com 5 bits de informação).

Sua aplicação deverá receber em entrada em console uma string de até 32 bytes/caracteres e calcular a representação dessa string em Base32.

Informações detalhadas quanto ao esquema de codificação poderão ser encontradas na RFC 4648 [https://datatracker.ietf.org/doc/html/rfc4648]

Entrada

A entrada é composta por strings ASCII de até 32 bytes/caracteres de comprimento.

Saída

A saída é a representação em Base32 da string apresentada na entrada.

Exemplo de Entrada

alo mundo!

Exemplo de Saída

MFWG6IDNOVXGI3ZB

Exemplo de Entrada

Universidade de Brasilia

Exemplo de Saída

KVXGS5TFOJZWSZDBMRSSAZDFEBBHEYLTNFWGSYI=

Exemplo de Entrada

Universidade de Brasili

Exemplo de Saída

KVXGS5TFOJZWSZDBMRSSAZDFEBBHEYLTNFWGS===

Exemplo de Entrada

Universidade de Brasil

Exemplo de Saída

KVXGS5TFOJZWSZDBMRSSAZDFEBBHEYLTNFWA====

Exemplo de Entrada

Universidade de Brasi

Exemplo de Saída

KVXGS5TFOJZWSZDBMRSSAZDFEBBHEYLTNE======