← Voltar para a seção

Prova final — Array

Três problemas inéditos (não vistos nas aulas) para testar se você sai desta seção resolvendo qualquer problema do tema: um fácil, um médio e um difícil. Alguns casos de teste são ocultos — como no LeetCode de verdade. Resolva em Python ou JavaScript.

Fácil

Majority Element

Dado um array nums de tamanho n, retorne o elemento majoritário — o elemento que aparece mais de ⌊n/2⌋ vezes. Pode assumir que ele sempre existe no array.

Exemplo: nums = [2, 2, 1, 1, 1, 2, 2] → resposta 2 (aparece 4 vezes em 7).

Ver no LeetCode ↗
Carregando editor…
Médio

Subarray Sum Equals K

Dado um array de inteiros nums (com positivos e negativos) e um inteiro k, retorne quantos subarrays contíguos somam exatamente k.

Exemplo: nums = [1, 1, 1], k = 2 → resposta 2 (os subarrays [1,1] começando nos índices 0 e 1).

Atenção: com números negativos, sliding window não funciona — pense em somas de prefixo.

Ver no LeetCode ↗
Carregando editor…
Difícil

Trapping Rain Water

Dado um array height representando um mapa de elevação onde a largura de cada barra é 1, calcule quanta água fica presa entre as barras depois de chover.

Exemplo: height = [0,1,0,2,1,0,1,3,2,1,2,1] → resposta 6.

A água acima de cada posição é limitada pela menor das maiores barras à esquerda e à direita.

Ver no LeetCode ↗
Carregando editor…