Pular para o conteúdo principal

Questão de Algoritmos e Estrutura de Dados — Algoritmos — CONSULPAM 2026

Algoritmos e Estrutura de DadosAlgoritmos
Código
qg660560
Banca
CONSULPAM
Órgão
GHC-RS
Ano
2026
Nível
Médio
Cargo
Programador
Considere um algoritmo destinado a verificar se uma matriz quadrada “M”, de ordem “n”, é simétrica. Para isso, ele percorre apenas os elementos acima da diagonal principal e compara cada “M[i][j]” com “M[j][i]”, interrompendo a execução ao encontrar a primeira divergência. De acordo com o enunciado, o número de comparações realizadas entre pares de posições no pior caso, ou seja, quando a matriz efetivamente é simétrica e de ordem “n”, é:
  1. A
  2. Bn² - n
  3. C(n - 1)²
  4. D(n² - n) / 2
  5. E(n² + n) / 2
Revelar gabarito e comentário

GabaritoD — (n² - n) / 2

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Análise de Algoritmos: Verificação de Simetria de Matriz

Gabarito: D. O algoritmo percorre apenas os elementos acima da diagonal principal, comparando cada par M[i][j] com M[j][i]. No pior caso (matriz simétrica), todas essas comparações são realizadas. O número de elementos acima da diagonal é a soma de (n-1) + (n-2) + ... + 1 = n(n-1)/2 = (n² - n)/2. Portanto, a alternativa D está correta.

Alternativa A — ❌ Incorreta

n² corresponde ao número total de elementos da matriz (incluindo diagonal e ambos os lados). O algoritmo não percorre elementos abaixo da diagonal nem a diagonal, pois compara apenas acima da diagonal (cada par é único).

Alternativa B — ❌ Incorreta

n² - n corresponde ao número de elementos fora da diagonal principal (tanto acima quanto abaixo). Como o algoritmo só percorre acima da diagonal, esse valor é o dobro do correto.

Alternativa C — ❌ Incorreta

(n - 1)² = n² - 2n + 1 não corresponde a nenhuma soma relevante para essa contagem.

Alternativa D — ✅ Correta ⟵ GABARITO

(n² - n) / 2 é exatamente a soma dos números de 1 a n-1, ou seja, a quantidade de elementos acima da diagonal principal. O algoritmo, no pior caso, compara todos esses pares uma vez.

Alternativa E — ❌ Incorreta

(n² + n) / 2 corresponde ao número de elementos na diagonal principal e acima dela (incluindo a diagonal). O algoritmo não compara a diagonal, pois compara apenas elementos acima.

Região da matriz

Quantidade

Total de elementos

Diagonal principal

n

Abaixo da diagonal

(n² - n)/2

Acima da diagonal

(n² - n)/2

Acima + diagonal

(n² + n)/2

PEGA ESSA DICA!

Para matrizes quadradas de ordem n, lembre-se que os elementos acima da diagonal formam um triângulo com (n-1) na primeira linha, (n-2) na segunda, até 1. A soma é n(n-1)/2. Essa é uma fórmula clássica para a metade superior de uma matriz.

Gabarito: D

Link permanente: /questoes/qg660560