Mascaramento de bits
O mascaramento de bits é uma técnica usada para "ocultar" certas partes de um número. É ótimo para transmitir muitas informações em um único inteiro. Ele recebe um número n, converte-o para sua forma binária e então retorna o dígito no índice b desse número binário. Observe que o dígito 0 é, na verdade, o último dígito, pois o dígito menos significativo (o menor) é o último. Sua tarefa é criar uma função bit_mask que receba dois argumentos: o primeiro sendo n e o segundo b, e retorne a forma "mascarada" de n.
Exemplos
bit_mask(37, 2) -> 1
# Binary representation is this:
# 0b100101
# ^
# We return index 2 from the right, which is 1
bit_mask(56, 1) -> 0
# 0b111000
# ^
bit_mask(327, 6) -> 1
# 0b101000111
# ^Observações
- Você não pode usar a função
bin. - Para um desafio extra, tente usar apenas operações de bits!
- Todos os números
0 ≤ n < 256serão testados. - Há mais de 2,000 testes, e todos precisam ser executados em até 12 segundos (definido pelo Edabit, não por mim).
- Se
nfor pequeno demais para ter um índiceb, retorne0.