DE Shaw LeetCode Questions
105 questions all-time · 11 easy · 64 medium · 30 hard
| # | Problem | Difficulty | Frequency | Acceptance |
|---|---|---|---|---|
| 1 | Binary Tree Cameras Dynamic Programming, Tree, Depth-First Search, Binary Tree | Hard | 100 | 0.5% |
| 2 | Find Minimum Cost to Remove Array Elements Array, Dynamic Programming | Medium | 86 | 0.2% |
| 3 | Maximum Number of Subsequences After One Inserting String, Dynamic Programming, Greedy, Prefix Sum | Medium | 81 | 0.3% |
| 4 | Maximum Points After Collecting Coins From All Nodes Array, Dynamic Programming, Bit Manipulation, Tree, Depth-First Search, Memoization | Hard | 79 | 0.4% |
| 5 | Minimum Size Subarray in Infinite Array Array, Hash Table, Sliding Window, Prefix Sum | Medium | 79 | 0.3% |
| 6 | Maximum Subsequence Score Array, Greedy, Sorting, Heap (Priority Queue) | Medium | 79 | 0.5% |
| 7 | Minimum Number of Taps to Open to Water a Garden Array, Dynamic Programming, Greedy | Hard | 77 | 0.5% |
| 8 | Relative Sort Array Array, Hash Table, Sorting, Counting Sort | Easy | 75 | 0.8% |
| 9 | Number of Subarrays With AND Value of K Array, Binary Search, Bit Manipulation, Segment Tree | Hard | 75 | 0.4% |
| 10 | Max Number of K-Sum Pairs Array, Hash Table, Two Pointers, Sorting | Medium | 75 | 0.6% |
| 11 | Sum Game Math, String, Greedy, Game Theory | Medium | 75 | 0.5% |
| 12 | Maximum Points Tourist Can Earn Array, Dynamic Programming, Matrix | Medium | 75 | 0.5% |
| 13 | Letter Combinations of a Phone Number Hash Table, String, Backtracking | Medium | 73 | 0.7% |
| 14 | Maximum Strength of K Disjoint Subarrays Array, Dynamic Programming, Prefix Sum | Hard | 73 | 0.3% |
| 15 | Removing Minimum Number of Magic Beans Array, Greedy, Sorting, Enumeration, Prefix Sum | Medium | 73 | 0.4% |
| 16 | Find the Sum of the Power of All Subsequences Array, Dynamic Programming | Hard | 73 | 0.4% |
| 17 | Minimum Cost Walk in Weighted Graph Array, Bit Manipulation, Union-Find, Graph Theory | Hard | 73 | 0.7% |
| 18 | Minimum Deletions to Make String K-Special Hash Table, String, Greedy, Sorting, Counting | Medium | 73 | 0.7% |
| 19 | Greatest Sum Divisible by Three Array, Dynamic Programming, Greedy, Sorting | Medium | 73 | 0.6% |
| 20 | Query Kth Smallest Trimmed Number Array, String, Divide and Conquer, Sorting, Heap (Priority Queue), Radix Sort, Quickselect | Medium | 73 | 0.5% |
| 21 | Equal Row and Column Pairs Array, Hash Table, Matrix, Simulation | Medium | 73 | 0.7% |
| 22 | Number of Substrings Containing All Three Characters Hash Table, String, Sliding Window | Medium | 73 | 0.7% |
| 23 | Maximum Deletions on a String String, Dynamic Programming, Rolling Hash, String Matching, Hash Function | Hard | 73 | 0.4% |
| 24 | Median of a Row Wise Sorted Matrix Array, Binary Search, Matrix | Medium | 73 | 0.7% |
| 25 | Determine the Winner of a Bowling Game Array, Simulation | Easy | 73 | 0.4% |
| 26 | Take Gifts From the Richest Pile Array, Heap (Priority Queue), Simulation | Easy | 73 | 0.8% |
| 27 | Find the Maximum Divisibility Score Array | Easy | 73 | 0.5% |
| 28 | Shortest String That Contains Three Strings String, Greedy, Enumeration | Medium | 73 | 0.3% |
| 29 | Find Peak Calling Hours for Each City Database | Medium | 73 | 0.6% |
| 30 | Minimize Connected Groups by Inserting Interval Array, Binary Search, Sliding Window, Sorting | Medium | 73 | 0.5% |
| 31 | Minimum Runes to Add to Cast Spell Array, Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort | Hard | 73 | 0.4% |
| 32 | Count the Number of Incremovable Subarrays II Array, Two Pointers, Binary Search | Hard | 71 | 0.4% |
| 33 | Trapping Rain Water Array, Two Pointers, Dynamic Programming, Stack, Monotonic Stack | Hard | 62 | 0.7% |
| 34 | House Robber Array, Dynamic Programming | Medium | 58 | 0.5% |
| 35 | Insert Delete GetRandom O(1) Array, Hash Table, Math, Design, Randomized | Medium | 58 | 0.6% |
| 36 | K-th Smallest in Lexicographical Order Trie | Hard | 58 | 0.5% |
| 37 | Valid Parentheses String, Stack | Easy | 58 | 0.4% |
| 38 | Majority Element Array, Hash Table, Divide and Conquer, Sorting, Counting | Easy | 58 | 0.7% |
| 39 | Minimum Number of Refueling Stops Array, Dynamic Programming, Greedy, Heap (Priority Queue) | Hard | 58 | 0.4% |
| 40 | Using a Robot to Print the Lexicographically Smallest String Hash Table, String, Stack, Greedy | Medium | 58 | 0.6% |
| 41 | Maximum Product Subarray Array, Dynamic Programming | Medium | 53 | 0.4% |
| 42 | Sliding Window Maximum Array, Queue, Sliding Window, Heap (Priority Queue), Monotonic Queue | Hard | 53 | 0.5% |
| 43 | Koko Eating Bananas Array, Binary Search | Medium | 53 | 0.5% |
| 44 | Kth Smallest Number in Multiplication Table Math, Binary Search | Hard | 53 | 0.5% |
| 45 | Longest String Chain Array, Hash Table, Two Pointers, String, Dynamic Programming, Sorting | Medium | 53 | 0.6% |
| 46 | Rotting Oranges Array, Breadth-First Search, Matrix | Medium | 53 | 0.6% |
| 47 | Reorganize String Hash Table, String, Greedy, Sorting, Heap (Priority Queue), Counting | Medium | 53 | 0.6% |
| 48 | Median of Two Sorted Arrays Array, Binary Search, Divide and Conquer | Hard | 46 | 0.5% |
| 49 | Longest Consecutive Sequence Array, Hash Table, Union-Find | Medium | 46 | 0.5% |
| 50 | Put Marbles in Bags Array, Greedy, Sorting, Heap (Priority Queue) | Hard | 46 | 0.7% |
| 51 | Average Waiting Time Array, Simulation | Medium | 46 | 0.7% |
| 52 | Open the Lock Array, Hash Table, String, Breadth-First Search | Medium | 46 | 0.6% |
| 53 | Minimum Number of Pushes to Type Word II Hash Table, String, Greedy, Sorting, Counting | Medium | 46 | 0.8% |
| 54 | Find the Smallest Divisor Given a Threshold Array, Binary Search | Medium | 46 | 0.7% |
| 55 | Heaters Array, Two Pointers, Binary Search, Sorting | Medium | 46 | 0.4% |
| 56 | Shortest Subarray to be Removed to Make Array Sorted Array, Two Pointers, Binary Search, Stack, Monotonic Stack | Medium | 46 | 0.5% |
| 57 | Consecutive Numbers Sum Math, Enumeration | Hard | 46 | 0.4% |
| 58 | Coin Change II Array, Dynamic Programming | Medium | 46 | 0.6% |
| 59 | K-th Symbol in Grammar Math, Bit Manipulation, Recursion | Medium | 46 | 0.5% |
| 60 | Implement Rand10() Using Rand7() Math, Rejection Sampling, Randomized, Probability and Statistics | Medium | 46 | 0.5% |
| 61 | Excel Sheet Column Title Math, String | Easy | 46 | 0.5% |
| 62 | Maximize Score of Numbers in Ranges Array, Binary Search, Greedy, Sorting | Medium | 46 | 0.4% |
| 63 | Sum of Subarray Ranges Array, Stack, Monotonic Stack | Medium | 46 | 0.6% |
| 64 | Asteroid Collision Array, Stack, Simulation | Medium | 46 | 0.5% |
| 65 | Find Triangular Sum of an Array Array, Math, Simulation, Combinatorics, Number Theory | Medium | 46 | 0.8% |
| 66 | Number of Islands Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Medium | 46 | 0.6% |
| 67 | LRU Cache Hash Table, Linked List, Design, Doubly-Linked List | Medium | 46 | 0.5% |
| 68 | Minimum Cost to Merge Stones Array, Dynamic Programming, Prefix Sum | Hard | 46 | 0.5% |
| 69 | Furthest Building You Can Reach Array, Greedy, Heap (Priority Queue) | Medium | 46 | 0.5% |
| 70 | Search a 2D Matrix Array, Binary Search, Matrix | Medium | 46 | 0.5% |
| 71 | Unique Paths Math, Dynamic Programming, Combinatorics | Medium | 37 | 0.7% |
| 72 | Best Time to Buy and Sell Stock Array, Dynamic Programming | Easy | 37 | 0.6% |
| 73 | Basic Calculator II Math, String, Stack | Medium | 37 | 0.5% |
| 74 | Maximum Performance of a Team Array, Greedy, Sorting, Heap (Priority Queue) | Hard | 37 | 0.5% |
| 75 | Peak Index in a Mountain Array Array, Binary Search | Medium | 37 | 0.7% |
| 76 | Best Time to Buy and Sell Stock II Array, Dynamic Programming, Greedy | Medium | 37 | 0.7% |
| 77 | Number of Ways to Reorder Array to Get Same BST Array, Math, Divide and Conquer, Dynamic Programming, Tree, Union-Find, Binary Search Tree, Memoization, Combinatorics, Binary Tree | Hard | 37 | 0.5% |
| 78 | Minimum Number of Visited Cells in a Grid Array, Dynamic Programming, Stack, Breadth-First Search, Union-Find, Heap (Priority Queue), Matrix, Monotonic Stack | Hard | 37 | 0.2% |
| 79 | Maximum OR Array, Greedy, Bit Manipulation, Prefix Sum | Medium | 37 | 0.4% |
| 80 | Minimum Size Subarray Sum Array, Binary Search, Sliding Window, Prefix Sum | Medium | 37 | 0.5% |
| 81 | 4Sum Array, Two Pointers, Sorting | Medium | 37 | 0.4% |
| 82 | Maximum Points You Can Obtain from Cards Array, Sliding Window, Prefix Sum | Medium | 37 | 0.6% |
| 83 | Find the Shortest Superstring Array, String, Dynamic Programming, Bit Manipulation, Bitmask | Hard | 37 | 0.5% |
| 84 | Find First and Last Position of Element in Sorted Array Array, Binary Search | Medium | 37 | 0.5% |
| 85 | Split Array Largest Sum Array, Binary Search, Dynamic Programming, Greedy, Prefix Sum | Hard | 37 | 0.6% |
| 86 | Flatten Nested List Iterator Stack, Tree, Depth-First Search, Design, Queue, Iterator | Medium | 37 | 0.7% |
| 87 | Design A Leaderboard Hash Table, Design, Sorting | Medium | 37 | 0.7% |
| 88 | Decode Ways String, Dynamic Programming | Medium | 37 | 0.4% |
| 89 | Text Justification Array, String, Simulation | Hard | 37 | 0.5% |
| 90 | Number of Ways to Wear Different Hats to Each Other Array, Dynamic Programming, Bit Manipulation, Bitmask | Hard | 37 | 0.5% |
| 91 | Word Search II Array, String, Backtracking, Trie, Matrix | Hard | 37 | 0.4% |
| 92 | Longest Valid Parentheses String, Dynamic Programming, Stack | Hard | 37 | 0.4% |
| 93 | Wildcard Matching String, Dynamic Programming, Greedy, Recursion | Hard | 37 | 0.3% |
| 94 | Longest Substring Without Repeating Characters Hash Table, String, Sliding Window | Medium | 37 | 0.4% |
| 95 | Minimum Cost to Make at Least One Valid Path in a Grid Array, Breadth-First Search, Graph Theory, Heap (Priority Queue), Matrix, Shortest Path | Hard | 37 | 0.7% |
| 96 | Number of Ways to Select Buildings String, Dynamic Programming, Prefix Sum | Medium | 37 | 0.5% |
| 97 | Maximum Width Ramp Array, Two Pointers, Stack, Monotonic Stack | Medium | 37 | 0.6% |
| 98 | Loud and Rich Array, Depth-First Search, Graph Theory, Topological Sort | Medium | 37 | 0.6% |
| 99 | Count Binary Substrings Two Pointers, String | Easy | 37 | 0.7% |
| 100 | Two Sum Array, Hash Table | Easy | 37 | 0.6% |
| 101 | Merge Sorted Array Array, Two Pointers, Sorting | Easy | 37 | 0.6% |
| 102 | Remove Duplicate Letters String, Stack, Greedy, Monotonic Stack | Medium | 37 | 0.5% |
| 103 | Next Permutation Array, Two Pointers | Medium | 37 | 0.5% |
| 104 | House Robber II Array, Dynamic Programming | Medium | 37 | 0.5% |
| 105 | Container With Most Water Array, Two Pointers, Greedy | Medium | 37 | 0.6% |
How to read this list
The tabs at the top split the questions by how recently people said they were asked in interviews. "Last 30 Days" is the past month, "Last 3 Months" is the past quarter, and so on. "All Time" is every question on record for this company.
Frequency is a score from 0 to 100 for how often a question showed up in that time window. A higher number means it came up more often, so the list starts with the most common questions first. Acceptance is the share of submissions that pass on LeetCode. Click any question to open it on LeetCode.