| 0005 | Longest Palindromic Substring | Two Pointers, String, Dynamic Programming |
| 0022 | Generate Parentheses | String, Dynamic Programming, Backtracking |
| 0045 | Jump Game II | Greedy, Array, Dynamic Programming |
| 0053 | Maximum Subarray | Array, Divide and Conquer, Dynamic Programming |
| 0055 | Jump Game | Greedy, Array, Dynamic Programming |
| 0062 | Unique Paths | Math, Dynamic Programming, Combinatorics |
| 0063 | Unique Paths II | Array, Dynamic Programming, Matrix |
| 0064 | Minimum Path Sum | Array, Dynamic Programming, Matrix |
| 0072 | Edit Distance | String, Dynamic Programming |
| 0091 | Decode Ways | String, Dynamic Programming |
| 0095 | Unique Binary Search Trees II | Tree, Binary Search Tree, Dynamic Programming +2 |
| 0096 | Unique Binary Search Trees | Tree, Binary Search Tree, Math +2 |
| 0097 | Interleaving String | String, Dynamic Programming |
| 0120 | Triangle | Array, Dynamic Programming |
| 0122 | Best Time to Buy and Sell Stock II | Greedy, Array, Dynamic Programming |
| 0131 | Palindrome Partitioning | String, Dynamic Programming, Backtracking |
| 0139 | Word Break | Trie, Memoization, Array +3 |
| 0152 | Maximum Product Subarray | Array, Dynamic Programming |
| 0198 | House Robber | Array, Dynamic Programming |
| 0213 | House Robber II | Array, Dynamic Programming |
| 0221 | Maximal Square | Array, Dynamic Programming, Matrix |
| 0241 | Different Ways to Add Parentheses | Recursion, Memoization, Math +2 |
| 0264 | Ugly Number II | Hash Table, Math, Dynamic Programming +1 |
| 0279 | Perfect Squares | Breadth-First Search, Math, Dynamic Programming |
| 0300 | Longest Increasing Subsequence | Array, Binary Search, Dynamic Programming |
| 0309 | Best Time to Buy and Sell Stock with Cooldown | Array, Dynamic Programming |
| 0313 | Super Ugly Number | Array, Math, Dynamic Programming |
| 0322 | Coin Change | Breadth-First Search, Array, Dynamic Programming |
| 0337 | House Robber III | Tree, Depth-First Search, Dynamic Programming +1 |
| 0343 | Integer Break | Math, Dynamic Programming |
| 0357 | Count Numbers with Unique Digits | Math, Dynamic Programming, Backtracking |
| 0368 | Largest Divisible Subset | Array, Math, Dynamic Programming +1 |
| 0375 | Guess Number Higher or Lower II | Math, Dynamic Programming, Game Theory |
| 0376 | Wiggle Subsequence | Greedy, Array, Dynamic Programming |
| 0377 | Combination Sum IV | Array, Dynamic Programming |
| 0396 | Rotate Function | Array, Math, Dynamic Programming |
| 0397 | Integer Replacement | Greedy, Bit Manipulation, Memoization +1 |
| 0413 | Arithmetic Slices | Array, Dynamic Programming, Sliding Window |
| 0416 | Partition Equal Subset Sum | Array, Dynamic Programming |
| 0435 | Non-overlapping Intervals | Greedy, Array, Dynamic Programming +1 |
| 0464 | Can I Win | Bit Manipulation, Memoization, Math +3 |
| 0467 | Unique Substrings in Wraparound String | String, Dynamic Programming |
| 0473 | Matchsticks to Square | Bit Manipulation, Array, Dynamic Programming +2 |
| 0474 | Ones and Zeroes | Array, String, Dynamic Programming |
| 0486 | Predict the Winner | Recursion, Array, Math +2 |
| 0494 | Target Sum | Array, Dynamic Programming, Backtracking |
| 0516 | Longest Palindromic Subsequence | String, Dynamic Programming |
| 0518 | Coin Change II | Array, Dynamic Programming |
| 0526 | Beautiful Arrangement | Bit Manipulation, Array, Dynamic Programming +2 |
| 0542 | 01 Matrix | Breadth-First Search, Array, Dynamic Programming +1 |
| 0553 | Optimal Division | Array, Math, Dynamic Programming |
| 0576 | Out of Boundary Paths | Dynamic Programming |
| 0583 | Delete Operation for Two Strings | String, Dynamic Programming |
| 0638 | Shopping Offers | Bit Manipulation, Memoization, Array +3 |
| 0646 | Maximum Length of Pair Chain | Greedy, Array, Dynamic Programming +1 |
| 0647 | Palindromic Substrings | Two Pointers, String, Dynamic Programming |
| 0650 | 2 Keys Keyboard | Math, Dynamic Programming |
| 0673 | Number of Longest Increasing Subsequence | Binary Indexed Tree, Segment Tree, Array +1 |
| 0678 | Valid Parenthesis String | Stack, Greedy, String +1 |
| 0688 | Knight Probability in Chessboard | Dynamic Programming |
| 0698 | Partition to K Equal Sum Subsets | Bit Manipulation, Memoization, Array +3 |
| 0712 | Minimum ASCII Delete Sum for Two Strings | String, Dynamic Programming |
| 0714 | Best Time to Buy and Sell Stock with Transaction Fee | Greedy, Array, Dynamic Programming |
| 0718 | Maximum Length of Repeated Subarray | Array, Binary Search, Dynamic Programming +3 |
| 0740 | Delete and Earn | Array, Hash Table, Dynamic Programming |
| 0787 | Cheapest Flights Within K Stops | Depth-First Search, Breadth-First Search, Graph +3 |
| 0790 | Domino and Tromino Tiling | Dynamic Programming |
| 0918 | Maximum Sum Circular Subarray | Queue, Array, Divide and Conquer +2 |
| 1143 | Longest Common Subsequence | String, Dynamic Programming |
| 1372 | Longest ZigZag Path in a Binary Tree | Tree, Depth-First Search, Dynamic Programming +1 |
| 1493 | Longest Subarray of 1's After Deleting One Element | Array, Dynamic Programming, Sliding Window |
| 0256 | Paint HousePremium | Array, Dynamic Programming |
| 0276 | Paint FencePremium | Dynamic Programming |
| 0294 | Flip Game IIPremium | Memoization, Math, Dynamic Programming +2 |
| 0333 | Largest BST SubtreePremium | Tree, Depth-First Search, Binary Search Tree +2 |
| 0351 | Android Unlock PatternsPremium | Bit Manipulation, Dynamic Programming, Backtracking +1 |
| 0361 | Bomb EnemyPremium | Array, Dynamic Programming, Matrix |
| 0418 | Sentence Screen FittingPremium | Array, String, Dynamic Programming |
| 0487 | Max Consecutive Ones IIPremium | Array, Dynamic Programming, Sliding Window |
| 0562 | Longest Line of Consecutive One in MatrixPremium | Array, Dynamic Programming, Matrix |
| 0634 | Find the Derangement of An ArrayPremium | Math, Dynamic Programming, Combinatorics |
| 0651 | 4 Keys KeyboardPremium | Math, Dynamic Programming |
| 0750 | Number Of Corner RectanglesPremium | Array, Math, Dynamic Programming +1 |
| 0764 | Largest Plus Sign | Array, Dynamic Programming |
| 0788 | Rotated Digits | Math, Dynamic Programming |
| 0792 | Number of Matching Subsequences | Trie, Array, Hash Table +4 |
| 0799 | Champagne Tower | Dynamic Programming |
| 0808 | Soup Servings | Math, Dynamic Programming, Probability and Statistics |
| 0813 | Largest Sum of Averages | Array, Dynamic Programming, Prefix Sum |
| 0823 | Binary Trees With Factors | Array, Hash Table, Dynamic Programming +1 |
| 0837 | New 21 Game | Math, Dynamic Programming, Sliding Window +1 |
| 0838 | Push Dominoes | Two Pointers, String, Dynamic Programming |
| 0845 | Longest Mountain in Array | Array, Two Pointers, Dynamic Programming +1 |
| 0873 | Length of Longest Fibonacci Subsequence | Array, Hash Table, Dynamic Programming |
| 0877 | Stone Game | Array, Math, Dynamic Programming +1 |
| 0894 | All Possible Full Binary Trees | Tree, Recursion, Memoization +2 |
| 0898 | Bitwise ORs of Subarrays | Bit Manipulation, Array, Dynamic Programming |
| 0907 | Sum of Subarray Minimums | Stack, Array, Dynamic Programming +1 |
| 0926 | Flip String to Monotone Increasing | String, Dynamic Programming |
| 0931 | Minimum Falling Path Sum | Array, Dynamic Programming, Matrix |
| 0935 | Knight Dialer | Dynamic Programming |
| 0978 | Longest Turbulent Subarray | Array, Dynamic Programming, Sliding Window |
| 0983 | Minimum Cost For Tickets | Array, Dynamic Programming |
| 1014 | Best Sightseeing Pair | Array, Dynamic Programming |
| 1024 | Video Stitching | Greedy, Array, Dynamic Programming |
| 1027 | Longest Arithmetic Subsequence | Array, Hash Table, Binary Search +1 |
| 1031 | Maximum Sum of Two Non-Overlapping Subarrays | Array, Dynamic Programming, Sliding Window |
| 1035 | Uncrossed Lines | Array, Dynamic Programming |
| 1039 | Minimum Score Triangulation of Polygon | Array, Dynamic Programming |
| 1043 | Partition Array for Maximum Sum | Array, Dynamic Programming |
| 1048 | Longest String Chain | Array, Hash Table, Two Pointers +3 |
| 1049 | Last Stone Weight II | Array, Dynamic Programming |
| 1062 | Longest Repeating SubstringPremium | String, Binary Search, Dynamic Programming +3 |
| 1066 | Campus Bikes IIPremium | Bit Manipulation, Array, Dynamic Programming +2 |
| 1105 | Filling Bookcase Shelves | Array, Dynamic Programming |
| 1130 | Minimum Cost Tree From Leaf Values | Stack, Greedy, Array +2 |
| 1139 | Largest 1-Bordered Square | Array, Dynamic Programming, Matrix |
| 1140 | Stone Game II | Array, Math, Dynamic Programming +2 |
| 1155 | Number of Dice Rolls With Target Sum | Dynamic Programming |
| 1162 | As Far from Land as Possible | Breadth-First Search, Array, Dynamic Programming +1 |
| 1182 | Shortest Distance to Target ColorPremium | Array, Binary Search, Dynamic Programming |
| 1186 | Maximum Subarray Sum with One Deletion | Array, Dynamic Programming |
| 1191 | K-Concatenation Maximum Sum | Array, Dynamic Programming |
| 1218 | Longest Arithmetic Subsequence of Given Difference | Array, Hash Table, Dynamic Programming |
| 1227 | Airplane Seat Assignment Probability | Brainteaser, Math, Dynamic Programming +1 |
| 1230 | Toss Strange CoinsPremium | Array, Math, Dynamic Programming +1 |
| 1262 | Greatest Sum Divisible by Three | Greedy, Array, Dynamic Programming +1 |
| 1277 | Count Square Submatrices with All Ones | Array, Dynamic Programming, Matrix |
| 1334 | Find the City With the Smallest Number of Neighbors at a Threshold Distance | Graph, Dynamic Programming, Shortest Path |
| 1387 | Sort Integers by The Power Value | Memoization, Dynamic Programming, Sorting |
| 1395 | Count Number of Teams | Binary Indexed Tree, Segment Tree, Array +1 |
| 1477 | Find Two Non-overlapping Sub-arrays Each With Target Sum | Array, Hash Table, Binary Search +2 |
| 1504 | Count Submatrices With All Ones | Stack, Array, Dynamic Programming +2 |
| 1524 | Number of Sub-arrays With Odd Sum | Array, Math, Dynamic Programming +1 |
| 1525 | Number of Good Ways to Split a String | Bit Manipulation, Hash Table, String +1 |
| 1567 | Maximum Length of Subarray With Positive Product | Greedy, Array, Dynamic Programming |
| 1578 | Minimum Time to Make Rope Colorful | Greedy, Array, String +1 |
| 1594 | Maximum Non Negative Product in a Matrix | Array, Dynamic Programming, Matrix |
| 1621 | Number of Sets of K Non-Overlapping Line Segments | Math, Dynamic Programming, Combinatorics |
| 1626 | Best Team With No Conflicts | Array, Dynamic Programming, Sorting |
| 1638 | Count Substrings That Differ by One Character | Hash Table, String, Dynamic Programming +1 |
| 1641 | Count Sorted Vowel Strings | Math, Dynamic Programming, Combinatorics |
| 1653 | Minimum Deletions to Make String Balanced | Stack, String, Dynamic Programming |
| 1654 | Minimum Jumps to Reach Home | Breadth-First Search, Array, Dynamic Programming |
| 1682 | Longest Palindromic Subsequence IIPremium | String, Dynamic Programming |
| 1690 | Stone Game VII | Array, Math, Dynamic Programming +1 |
| 1696 | Jump Game VI | Queue, Array, Dynamic Programming +2 |
| 1746 | Maximum Subarray Sum After One OperationPremium | Array, Dynamic Programming |
| 1749 | Maximum Absolute Sum of Any Subarray | Array, Dynamic Programming |
| 1774 | Closest Dessert Cost | Array, Dynamic Programming, Backtracking |
| 1786 | Number of Restricted Paths From First to Last Node | Graph, Topological Sort, Dynamic Programming +2 |
| 1824 | Minimum Sideway Jumps | Greedy, Array, Dynamic Programming |
| 1871 | Jump Game VII | String, Dynamic Programming, Prefix Sum +1 |
| 1884 | Egg Drop With 2 Eggs and N Floors | Math, Dynamic Programming |
| 1888 | Minimum Number of Flips to Make the Binary String Alternating | String, Dynamic Programming, Sliding Window |
| 1908 | Game of NimPremium | Bit Manipulation, Brainteaser, Array +3 |
| 1911 | Maximum Alternating Subsequence Sum | Array, Dynamic Programming |
| 1937 | Maximum Number of Points with Cost | Array, Dynamic Programming, Matrix |
| 1947 | Maximum Compatibility Score Sum | Bit Manipulation, Array, Dynamic Programming +2 |
| 1959 | Minimum Total Space Wasted With K Resizing Operations | Array, Dynamic Programming |
| 1976 | Number of Ways to Arrive at Destination | Graph, Topological Sort, Dynamic Programming +1 |
| 1981 | Minimize the Difference Between Target and Chosen Elements | Array, Dynamic Programming, Matrix |
| 1986 | Minimum Number of Work Sessions to Finish the Tasks | Bit Manipulation, Array, Dynamic Programming +2 |
| 1997 | First Day Where You Have Been in All the Rooms | Array, Dynamic Programming |
| 2002 | Maximum Product of the Length of Two Palindromic Subsequences | Bit Manipulation, String, Dynamic Programming +2 |
| 2008 | Maximum Earnings From Taxi | Array, Hash Table, Binary Search +2 |
| 2036 | Maximum Alternating Subarray SumPremium | Array, Dynamic Programming |
| 2052 | Minimum Cost to Separate Sentence Into RowsPremium | Array, Dynamic Programming |
| 2054 | Two Best Non-Overlapping Events | Array, Binary Search, Dynamic Programming +2 |
| 2063 | Vowels of All Substrings | Math, String, Dynamic Programming +1 |
| 2086 | Minimum Number of Food Buckets to Feed the Hamsters | Greedy, String, Dynamic Programming |
| 2100 | Find Good Days to Rob the Bank | Array, Dynamic Programming, Prefix Sum |
| 2110 | Number of Smooth Descent Periods of a Stock | Array, Math, Two Pointers +2 |
| 2140 | Solving Questions With Brainpower | Array, Dynamic Programming |
| 2152 | Minimum Number of Lines to Cover PointsPremium | Bit Manipulation, Geometry, Array +5 |
| 2184 | Number of Ways to Build Sturdy Brick WallPremium | Bit Manipulation, Array, Dynamic Programming +1 |
| 2189 | Number of Ways to Build House of CardsPremium | Math, Dynamic Programming |
| 2222 | Number of Ways to Select Buildings | String, Dynamic Programming, Prefix Sum |
| 2266 | Count Number of Texts | Hash Table, Math, String +1 |
| 2291 | Maximum Profit From Trading StocksPremium | Array, Dynamic Programming |
| 2297 | Jump Game VIIIPremium | Stack, Graph, Array +3 |
| 2304 | Minimum Path Cost in a Grid | Array, Dynamic Programming, Matrix |
| 2305 | Fair Distribution of Cookies | Bit Manipulation, Array, Dynamic Programming +2 |
| 2310 | Sum of Numbers With Units Digit K | Greedy, Math, Dynamic Programming +1 |
| 2311 | Longest Binary Subsequence Less Than or Equal to K | Greedy, Memoization, String +1 |
| 2320 | Count Number of Ways to Place Houses | Dynamic Programming |
| 2327 | Number of People Aware of a Secret | Queue, Dynamic Programming, Simulation |
| 2369 | Check if There is a Valid Partition For The Array | Array, Dynamic Programming |
| 2370 | Longest Ideal Subsequence | Hash Table, String, Dynamic Programming |
| 2378 | Choose Edges to Maximize Score in a TreePremium | Tree, Depth-First Search, Dynamic Programming |
| 2380 | Time Needed to Rearrange a Binary String | String, Dynamic Programming, Simulation |
| 2393 | Count Strictly Increasing SubarraysPremium | Array, Math, Dynamic Programming |
| 2400 | Number of Ways to Reach a Position After Exactly k Steps | Math, Dynamic Programming, Combinatorics |
| 2420 | Find All Good Indices | Array, Dynamic Programming, Prefix Sum |
| 2431 | Maximize Total Tastiness of Purchased FruitsPremium | Array, Dynamic Programming |
| 2436 | Minimum Split Into Subarrays With GCD Greater Than OnePremium | Greedy, Array, Math +2 |
| 2439 | Minimize Maximum of Array | Greedy, Array, Binary Search +2 |
| 2464 | Minimum Subarrays in a Valid SplitPremium | Array, Math, Dynamic Programming +1 |
| 2466 | Count Ways To Build Good Strings | Dynamic Programming |
| 2495 | Number of Subarrays Having Even ProductPremium | Array, Math, Dynamic Programming |
| 2501 | Longest Square Streak in an Array | Array, Hash Table, Binary Search +2 |
| 2510 | Check if There is a Path With Equal Number of 0's And 1'sPremium | Array, Dynamic Programming, Matrix |
| 2522 | Partition String Into Substrings With Values at Most K | Greedy, String, Dynamic Programming |
| 2533 | Number of Good Binary StringsPremium | Dynamic Programming |
| 2556 | Disconnect Path in a Binary Matrix by at Most One Flip | Depth-First Search, Breadth-First Search, Array +2 |
| 2560 | House Robber IV | Greedy, Array, Binary Search +1 |
| 2571 | Minimum Operations to Reduce an Integer to 0 | Greedy, Bit Manipulation, Dynamic Programming |
| 2572 | Count the Number of Square-Free Subsets | Bit Manipulation, Array, Math +2 |
| 2597 | The Number of Beautiful Subsets | Array, Hash Table, Math +4 |
| 2606 | Find the Substring With Maximum Cost | Array, Hash Table, String +1 |
| 2616 | Minimize the Maximum Difference of Pairs | Greedy, Array, Binary Search +2 |
| 2638 | Count the Number of K-Free SubsetsPremium | Array, Math, Dynamic Programming +2 |
| 2645 | Minimum Additions to Make Valid String | Stack, Greedy, String +1 |
| 2673 | Make Costs of Paths Equal in a Binary Tree | Greedy, Tree, Array +2 |
| 2684 | Maximum Number of Moves in a Grid | Array, Dynamic Programming, Matrix |
| 2707 | Extra Characters in a String | Trie, Array, Hash Table +2 |
| 2708 | Maximum Strength of a Group | Greedy, Bit Manipulation, Array +4 |
| 2712 | Minimum Cost to Make All Characters Equal | Greedy, String, Dynamic Programming |
| 2741 | Special Permutations | Bit Manipulation, Array, Dynamic Programming +1 |
| 2745 | Construct the Longest New String | Greedy, Brainteaser, Math +1 |
| 2746 | Decremental String Concatenation | Array, String, Dynamic Programming |
| 2750 | Ways to Split Array Into Good Subarrays | Array, Math, Dynamic Programming |
| 2767 | Partition String Into Minimum Beautiful Substrings | Hash Table, String, Dynamic Programming +1 |
| 2770 | Maximum Number of Jumps to Reach the Last Index | Array, Dynamic Programming |
| 2771 | Longest Non-decreasing Subarray From Two Arrays | Array, Dynamic Programming |
| 2786 | Visit Array Positions to Maximize Score | Array, Dynamic Programming |
| 2787 | Ways to Express an Integer as Sum of Powers | Dynamic Programming |
| 2811 | Check if it is Possible to Split Array | Greedy, Array, Dynamic Programming |
| 2826 | Sorting Three Groups | Array, Binary Search, Dynamic Programming |
| 2830 | Maximize the Profit as the Salesman | Array, Hash Table, Binary Search +2 |
| 2850 | Minimum Moves to Spread Stones Over Grid | Breadth-First Search, Array, Dynamic Programming +1 |
| 2892 | Minimizing Array After Replacing Pairs With Their ProductPremium | Greedy, Array, Dynamic Programming |
| 2896 | Apply Operations to Make Two Strings Equal | String, Dynamic Programming |
| 2901 | Longest Unequal Adjacent Groups Subsequence II | Array, String, Dynamic Programming |
| 2915 | Length of the Longest Subsequence That Sums to Target | Array, Dynamic Programming |
| 2919 | Minimum Increment Operations to Make Array Beautiful | Array, Dynamic Programming |
| 2925 | Maximum Score After Applying Operations on a Tree | Tree, Depth-First Search, Dynamic Programming |
| 2930 | Number of Strings Which Can Be Rearranged to Contain Substring | Math, Dynamic Programming, Combinatorics |
| 2944 | Minimum Number of Coins for Fruits | Queue, Array, Dynamic Programming +2 |
| 2957 | Remove Adjacent Almost-Equal Characters | Greedy, String, Dynamic Programming |
| 2979 | Most Expensive Item That Can Not Be BoughtPremium | Math, Dynamic Programming, Number Theory |
| 2992 | Number of Self-Divisible PermutationsPremium | Bit Manipulation, Array, Math +4 |
| 2998 | Minimum Number of Operations to Make X and Y Equal | Breadth-First Search, Memoization, Dynamic Programming |