NeetCode 150 · padrão grid/string DP

2-D Dynamic Programming

11 problemas · atualizado em 18 de julho de 2026
Para quem vai encarar entrevista de algoritmos

O padrão em 30 segundos

DP com duas dimensões: comparar duas strings (edit distance, longest common subsequence) ou andar numa grade contando caminhos. A tabela dp[i][j] cruza prefixos, e a resposta mora no canto dela.

Como reconhecer na hora

  • DUAS strings/sequências comparadas → dp[i][j] sobre prefixos
  • Grade com movimento restrito (só direita/baixo) contando caminhos ou custo
  • "Subsequência" comum/palíndroma entre duas coisas
onde todo mundo erra · anotado no caderno

Confundir subSTRING (contígua) com subSEQUÊNCIA (mantém ordem, pode pular): muda a recorrência inteira. E errar a linha/coluna base (casos com prefixo vazio), que é onde a tabela inteira ancora.

Complexidade típica: O(n·m) tempo e espaço; espaço cai pra O(min(n,m)) guardando só duas linhas.

Os 11 problemas da categoria

ProblemaDificuldadeNível no app
Unique Pathsmediumnível 2 · core
Longest Common Subsequencemediumnível 2 · core
Best Time to Buy/Sell Stock With Cooldownmediumnível 3
Coin Change IImediumnível 3
Target Summediumnível 3
Interleaving Stringmediumnível 3
Edit Distancemediumnível 3
Longest Increasing Path in a Matrixhardnível 4
Distinct Subsequenceshardnível 4
Burst Balloonshardnível 4
Regular Expression Matchinghardnível 4

No app, esses 11 problemas entram numa trilha de 4 níveis com marcação do que mais cai em entrevista, e você registra tentativa, revisão e domínio de cada um.

Abrir a trilha NeetCode no app