GeraProva GeraProva Provas com IA para professores do Brasil
Computação9º anoBNCC EF09CO01Média⏱ medio

Uma equipe de mobilidade urbana modelou um conjunto de cidades como um grafo. Cada vértice representa uma…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF09CO01

Criar soluções de problemas para os quais seja adequado o uso de árvores e grafos para descrever suas informações e automatizá-las usando uma linguagem de programação.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Uma equipe de mobilidade urbana modelou um conjunto de cidades como um grafo. Cada vértice representa uma cidade, cada aresta representa uma estrada direta e o número associado a cada aresta indica o tempo estimado de viagem, em minutos. Todos os tempos são positivos. Para orientar ambulâncias, o sistema precisa encontrar, entre uma cidade de origem e uma cidade de destino, o percurso cujo tempo total de viagem seja o menor possível. Com base nessa representação e nas características dos dados, qual abordagem permite determinar corretamente o percurso de menor tempo entre duas cidades?

  1. A) Aplicar busca em profundidade, seguindo o primeiro percurso encontrado.
  2. B) Aplicar busca em largura, considerando iguais os custos de todas as estradas.
  3. C) Aplicar o algoritmo de Dijkstra, considerando os tempos positivos das estradas.
  4. D) Usar uma matriz de adjacência, armazenando os tempos das estradas.
  5. E) Escolher sempre a estrada com menor tempo no ponto atual.

✅ Resposta correta: alternativa C

Resolução passo a passo

  1. O problema pede o caminho de menor soma de pesos (tempos) entre uma origem e um destino em um grafo com pesos positivos nas arestas.
  2. Busca em profundidade percorre o grafo seguindo um caminho até o fim antes de voltar, sem considerar pesos; o primeiro caminho encontrado não é necessariamente o de menor tempo, então a alternativa A está errada.
  3. Busca em largura encontra o caminho com menor número de arestas, o que só coincide com o menor tempo se todas as estradas tiverem o mesmo tempo; como os tempos variam, a alternativa B está errada.
  4. O algoritmo de Dijkstra é feito para caminhos mínimos em grafos com pesos não negativos; como todos os tempos são positivos, ele garante o resultado correto, sendo a alternativa C a correta.
  5. Uma matriz de adjacência é apenas uma forma de representar o grafo; ela não determina por si só o percurso mínimo, então a alternativa D está errada.
  6. Escolher sempre a estrada mais rápida a partir do ponto atual é a heurística gulosa, que pode levar a um caminho total maior ao evitar uma estrada inicial lenta que leva a um trajeto final muito mais rápido; por isso a alternativa E está errada.
  7. Conclusão: a alternativa C está correta e coincide com o gabarito oficial.

💡 Dica: Considere algoritmos de busca de caminho mais curto.

Alternativa por alternativa

A Erradaerro: Conceituala que mais engana

Acredita que o primeiro caminho encontrado na busca em profundidade já é o de menor tempo, ignorando que a busca não compara pesos.

Por que engana: Confundir algoritmos de busca simples com algoritmos específicos para encontrar caminhos mínimos, como Dijkstra.

B Erradaerro: Conceitual

Confunde menor número de estradas com menor tempo de viagem, assumindo que todas as arestas têm o mesmo custo.

C Correta

Como as estradas possuem pesos que representam tempos de viagem e todos esses pesos são positivos, é necessário utilizar um algoritmo que compare os custos acumulados dos percursos. O algoritmo de Dijkstra determina os menores caminhos a partir de uma origem em grafos com pesos não negativos, portanto é adequado ao problema apresentado.

D Erradaerro: Conceitual

Imagina que armazenar os tempos em uma matriz já resolve o problema, confundindo a estrutura de dados com o algoritmo de busca do caminho.

E Erradaerro: Senso comum

Supõe que a escolha local da estrada mais rápida em cada cruzamento sempre gera o percurso global mais rápido, desconsiderando trajetos iniciais mais lentos que compensam depois.

Raio-X da questão

Dificuldade Média
Bloom Analisar
Leitura medio
Discriminação alto
Peso pedagógico alto
Autonomia do enunciado completo
Cobertura da habilidade dupla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ situacional🧩 desafio
🎯 Conceito central

roteamento em grafos

📌 Objetivo

avaliacao

🧱 Pré-requisitos

algoritmos de grafos · busca em largura e profundidade

📚 Reveja

Revisar algoritmos de busca de caminho mais curto, como Dijkstra.

⚠️ Erro mais comum

Confundir algoritmos de busca simples com algoritmos específicos para encontrar caminhos mínimos, como Dijkstra.

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cientifico

Questões parecidas com resolução

Todas as questões de Programação - Programação usando grafos e árvores

🔎 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.