Prova final — Matriz
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.
Flood Fill
Dada uma imagem (grid de inteiros), uma posição inicial (sr, sc) e uma cor nova, pinte a região conectada à célula inicial (mesma cor original, vizinhança horizontal/vertical) com a cor nova. Retorne a imagem.
Exemplo: [[1,1,1],[1,1,0],[1,0,1]], sr=1, sc=1, cor=2 → [[2,2,2],[2,2,0],[2,0,1]].
Spiral Matrix II
Dado um inteiro n, gere uma matriz n × n preenchida com os números de 1 a n² em ordem espiral (horário, a partir do canto superior esquerdo).
Exemplo: n = 3 → [[1,2,3],[8,9,4],[7,6,5]].
Surrounded Regions
Num grid de "X" e "O", capture todas as regiões de "O" que estão totalmente cercadas por "X" (trocando esses "O" por "X"). Um "O" não é capturado se estiver conectado a um "O" na borda do grid. Retorne o grid.
Exemplo: a região central de "O" cercada vira "X"; os "O" que tocam a borda permanecem.