GeraProva GeraProva Provas com IA para professores do Brasil
Computação9º anoBNCC EF69CO04Difícil⏱ longo

Projete um algoritmo guloso em pseudocódigo que, dado um vetor de n intervalos [inicio, fim], selecione o…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF69CO04

Construir soluções de problemas usando a técnica de decomposição e automatizar tais soluções usando uma linguagem de programação.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Projete um algoritmo guloso em pseudocódigo que, dado um vetor de n intervalos [inicio, fim], selecione o maior conjunto de intervalos não sobrepostos. Explique a corretude e indique a complexidade temporal.

✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.

Resposta esperada

Pseudocódigo: 1. ordenar(intervalos) por fim ascendente 2. selecionados = [] 3. ultimo_fim = -8 4. para cada I em intervalos: se I.inicio >= ultimo_fim então adicionar I em selecionados ultimo_fim = I.fim 5. retornar selecionados Corretude: argumento de troca — escolher o intervalo com menor fim deixa mais espaço para selecionar os demais; trocando o primeiro intervalo diferente por este não reduz o número total, portanto a solução gulosa é ótima. Complexidade: ordenar O(n log n) + varredura O(n) => O(n log n).

Explicação

O algoritmo é eficaz porque prioriza a seleção de intervalos com o menor tempo de término, permitindo a inclusão de mais intervalos subsequentes. Essa estratégia garante que, ao escolher um intervalo, sempre haverá espaço para outros, maximizando o conjunto final. A combinação da ordenação e da varredura resulta em uma complexidade temporal de O(n log n), que é a mais eficiente possível para este problema.

Raio-X da questão

Dificuldade Difícil
Bloom Analisar
Leitura alto
Discriminação alto
Peso pedagógico alto
Autonomia do enunciado completo
Cobertura da habilidade multipla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ interpretativa🧩 desafio
🎯 Conceito central

algoritmo guloso

📌 Objetivo

avaliacao

🧱 Pré-requisitos

algoritmos e estruturas de dados · análise de complexidade

📚 Reveja

Revisar a técnica de algoritmos gulosos e análise de complexidade.

⚠️ Erro mais comum

O aluno pode confundir a abordagem gulosa com outras técnicas de programação, como programação dinâmica, resultando em uma solução incorreta.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

abstrato

Questões parecidas com resolução

Todas as questões de Estratégias de solução de problemas - Decomposição

🔎 Procurar outra questão

Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.

Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog

Ocorreu um erro inesperado. Recarregar X

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.