0Pricing
Competitive Programming Academy · Aula

AND, OR, XOR e Deslocamentos

Leia e combine bits com confiança.

AND, OR, XOR e Deslocamentos é uma aula grátis de Competitive Programming Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Competitive Programming Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Competitive Programming Academy inclui 4 aulas no total.

Os bits são suas ferramentas

Todo inteiro é, na verdade, uma sequência de bits, apenas 0s e 1s. Aprender a lê-los e combiná-los oferece truques rápidos e inteligentes para competições. 🔧

Veja o binário

Use bin() do Python para observar os bits de qualquer número. O prefixo 0b apenas indica que o número está em binário; o restante é o padrão de bits.

print(bin(13))  # 0b1101

AND mantém os bits comuns

O operador AND (&) fornece 1 somente onde os dois números têm 1. Ele é perfeito para verificar ou mascarar bits compartilhados.

print(6 & 3)  # 0b110 & 0b011 = 0b010 = 2

OR combina os bits

O operador OR (|) fornece 1 sempre que qualquer um dos números tiver 1. Use-o para ativar sinalizadores sem alterar o restante.

print(6 | 1)  # 0b110 | 0b001 = 0b111 = 7

XOR identifica diferenças

O operador XOR (^) fornece 1 onde os dois bits são diferentes. Ele é muito usado em competições para alternar bits e encontrar o elemento que aparece uma única vez.

print(6 ^ 3)  # 0b110 ^ 0b011 = 0b101 = 5

XOR se anula

Um número XOR ele mesmo é sempre 0, e XOR com 0 não o altera. Essa propriedade de autoanulação é a base de muitos problemas com XOR.

print(7 ^ 7)  # 0
print(7 ^ 0)  # 7

Encontre o número único

Se cada valor aparecer duas vezes, exceto um, aplique XOR a todos eles, e os pares desaparecerão. O que permanecer será o valor único.

ans = 0
for x in [4, 1, 2, 1, 2]:
    ans ^= x
print(ans)  # 4

O deslocamento à esquerda multiplica

Um deslocamento à esquerda move os bits para posições mais altas, adicionando zeros à direita. Cada deslocamento de uma posição dobra o valor, como uma multiplicação por uma potência de dois.

print(3 << 2)  # 3 * 4 = 12

O deslocamento à direita divide

Um deslocamento à direita remove bits da extremidade direita. Cada deslocamento de uma posição divide o valor pela metade, realizando uma divisão inteira por uma potência de dois.

print(20 >> 2)  # 20 // 4 = 5

Crie uma potência de dois

Deslocar 1 para a esquerda em k posições cria instantaneamente o valor 2 elevado a k. Essa é a maneira mais simples de criar máscaras de um único bit.

print(1 << 5)  # 32

A velocidade importa nas competições

Os operadores bit a bit executam em uma única etapa rápida, portanto substituir aritmética por deslocamentos pode fazer você cumprir um limite de tempo apertado. Domine-os completamente. ⚡

Verificação rápida

É hora de testar seus operadores de bits.

Revisão: operadores de bits

Você conheceu AND, OR, XOR e os deslocamentos: combine, alterne e dimensione bits em uma única etapa rápida. Esses são os blocos fundamentais de todos os truques de bits que virão. 🎉

Perguntas Frequentes

A aula “AND, OR, XOR e Deslocamentos” é grátis?

Sim — o texto completo de “AND, OR, XOR e Deslocamentos” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Competitive Programming Academy, atualize para CoddyKit PRO. O curso de Competitive Programming Academy inclui 4 aulas no total.

O que vou aprender em “AND, OR, XOR e Deslocamentos”?

Leia e combine bits com confiança. Você pratica Competitive Programming Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Competitive Programming Academy?

Nenhuma experiência prévia é necessária. Competitive Programming Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.

Quanto tempo leva a aula “AND, OR, XOR e Deslocamentos”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Competitive Programming Academy?

Sim. Cada aula de Competitive Programming Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. AND, OR, XOR e Deslocamentos
  2. Defina, Limpe e Alterne um Bit
  3. Conte Bits e o Bit Definido Mais Baixo
  4. Máscaras de Bits como Pequenos Conjuntos
← Voltar para Competitive Programming Academy