Crie Arrays Rapidamente com Compreensões
Leia e estruture a entrada em uma linha.
Crie Arrays Rapidamente com Compreensões é uma aula grátis de Competitive Programming Academy no CoddyKit. Esta é a aula 2 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.
Criar listas em uma linha
Uma compreensão de listas cria uma lista a partir de um laço em uma única expressão. Ela é mais curta, mais rápida e o padrão das competições para transformar dados.
squares = [i * i for i in range(5)]O formato básico
O padrão é [expr for item in iterable]. A expressão à esquerda é executada uma vez para cada elemento produzido pelo laço.
doubles = [x * 2 for x in nums]Ler uma linha de inteiros
A linha mais comum em competições: divida a entrada e converta cada valor. Essa etapa legível converte texto em inteiros.
nums = [int(x) for x in input().split()]map() faz o mesmo trabalho
map(int, ...) aplica int a cada valor. Envolva-o em list(...) para materializar os valores e reutilizá-los.
nums = list(map(int, input().split()))Filtrar durante a construção
Adicione uma condição if no final para manter apenas os itens aprovados. Aqui, somente os números pares sobrevivem à construção.
evens = [x for x in nums if x % 2 == 0]Transformar e filtrar juntos
É possível transformar e filtrar ao mesmo tempo: altere os itens mantidos à esquerda enquanto os seleciona com o if final.
out = [x * x for x in nums if x > 0]Criar um vetor preenchido com zeros
Precisa de um vetor com tamanho fixo? [0] * n cria n zeros instantaneamente, sendo perfeito para contadores e tabelas de DP.
dp = [0] * nCuidado com listas internas repetidas
Use uma compreensão para uma grade 2D. [[0] * c for _ in range(r)] cria linhas independentes, enquanto [[0] * c] * r compartilha uma única linha.
grid = [[0] * c for _ in range(r)]Indexar com enumerate
Quando também precisar das posições, percorra os elementos com enumerate para obter o índice e o valor juntos em cada etapa.
pairs = [(i, v) for i, v in enumerate(nums)]Ler uma matriz inteira
Combine a leitura e o laço para obter de uma vez r linhas de números, construindo a grade completa em duas linhas curtas.
grid = [list(map(int, input().split()))
for _ in range(r)]Versões para conjuntos e dicionários
A mesma sintaxe cria conjuntos e dicionários: use chaves. {x for x in nums} remove duplicatas, e pares chave:valor criam um mapa.
seen = {x for x in nums}Verificação rápida
Escolha a forma idiomática de ler uma linha de inteiros separados por espaços.
Recapitulação: construa rapidamente
Agora você consegue construir, filtrar e remodelar vetores em uma linha, além de ler matrizes completas rapidamente. As compreensões mantêm o processamento da entrada curto e livre de erros. 💡
Perguntas Frequentes
A aula “Crie Arrays Rapidamente com Compreensões” é grátis?
Sim — o texto completo de “Crie Arrays Rapidamente com Compreensões” é 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 “Crie Arrays Rapidamente com Compreensões”?
Leia e estruture a entrada em uma linha. 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 2 de 4.
Quanto tempo leva a aula “Crie Arrays Rapidamente com Compreensões”?
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
- Listas, Indexação e Fatiamento para CP
- Crie Arrays Rapidamente com Compreensões
- Mínimo, Máximo, Soma e Totais Acumulados
- Encontre o Índice, não Apenas o Valor