==π Find the 14 problems set below==
Binary Search on Answer β Interview Study Order
π’ Group 1 β Core / Must Master
These establish the basic candidate β feasible() β first True pattern.
| # | Problem | LC | Pattern | Company tags* | Links |
|---|---|---|---|---|---|
| 1 | Koko Eating Bananas | 875 | Minimum rate β count time | Amazon, Google | koko-eating-bananas |
| 2 | Capacity to Ship Packages Within D Days | 1011 | Minimum capacity β greedy grouping | Amazon, Meta | capacity-to-ship-packages |
| 3 | Find the Smallest Divisor Given a Threshold | 1283 | Minimum divisor β counting | Amazon, Apple | find-the-smallest-divisor-given-a-threshold |
| 4 | Minimum Speed to Arrive on Time | 1870 | Minimum speed β time calculation | Google, Amazon | koko-eating-bananas |
What you should learn from this group:
X = candidate answer
β
Can X satisfy the constraint?
β
FFFFTTTT
β
find first True
After these, you should be able to write the basic template without thinking.
π‘ Group 2 β Minimize the Maximum
This is probably the most important family after Group 1.
The common transformation is:
βMinimize the maximum ___β
becomes:
βAssume the maximum is X. Can I make the entire problem work?β
| # | Problem | LC | Validator | Company tags* | Links |
|---|---|---|---|---|---|
| 5 | Split Array Largest Sum | 410 | Greedy partition | Google, Meta, Amazon | split-array-largest-sum |
| 6 | Minimized Maximum of Products Distributed to Any Store | 2064 | Greedy allocation | Amazon, Microsoft | minimized-maximum-of-products-distributed-to-any-store |
| 7 | Minimum Limit of Balls in a Bag | 1760 | Count required splits | Google, Amazon | minimum-limit-of-balls-in-a-bag |
| 8 | Book Allocation | β | Greedy partition | Amazon, Microsoft | split-array-largest-sum |
| 9 | Painterβs Partition | β | Greedy partition | Amazon, Microsoft | split-array-largest-sum |
Important:
You donβt need to separately βlearnβ Book Allocation and Painterβs Partition after LC 410.
They are essentially the same family:
candidate maximum load
β
greedily create groups
β
groups <= K ?
β
first feasible
So Iβd study Split Array Largest Sum deeply, then use the others as reinforcement.
π΅ Group 3 β Maximize the Minimum
This is the other major pattern you absolutely need.
The wording usually looks like:
Maximize the minimum distance/value.
You instead ask:
Can I achieve a minimum of at least X?
Now the predicate is:
TTTTFFFF
and you find the last True.
| # | Problem | LC | Validator | Company tags* | Links |
|---|---|---|---|---|---|
| 10 | Magnetic Force Between Two Balls | 1552 | Greedy placement | Amazon, Meta, Google | magnetic-force-between-two-balls-or-aggressive-cows |
| 11 | Aggressive Cows | β | Same greedy placement | Amazon, Google | magnetic-force-between-two-balls-or-aggressive-cows |
| 12 | Divide Chocolate | 1231 | Greedy partition | divide-chocolate_lc-1231 |
Again, 1552 is the one Iβd learn properly.
The reusable pattern:
candidate minimum distance = X
β
greedily place objects
β
can place >= K?
β
TTTTFFFF
β
last True
π£ Group 4 β Binary Search + Counting
This is where the pattern becomes more interesting.
Instead of a straightforward greedy validator, you count how many things satisfy a property for candidate X.
| # | Problem | LC | Validator | Company tags* | Links |
|---|---|---|---|---|---|
| 13 | K-th Smallest Pair Distance | 719 | Two pointers + counting | Google, Amazon | kth-smallest-pair-distance |
| 14 | K-th Smallest Element in a Sorted Matrix | 378 | Count <= X | Amazon, Google | kth-smallest-element-in-a-sorted-matrix |
| 15 | K-th Smallest Number in Multiplication Table | 668 | Mathematical counting | kth-smallest-number-in-multiplication-table | |
| 16 | Maximum Candies Allocated to K Children | 2226 | Count pieces | Google, Amazon | maximum-candies-allocated-to-k-children-(lc-2226) |
This teaches a very useful abstraction:
candidate X
β
count(X)
β
is count(X) >= K ?
β
predicate
β
binary search
Priority
For your interview, Iβd do:
719 β 2226 β 378 β 668
You donβt necessarily need all four if time becomes tight.
π΄ Group 5 β Advanced / Different Validator
Do these only after the previous groups feel natural.
| Problem | LC | Why itβs different | Company tags* | Links |
|---|---|---|---|---|
| Minimize Max Distance to Gas Station | 774 | Continuous / floating-point BS | minimize-max-distance-to-gas-station | |
| Swim in Rising Water | 778 | Binary search + graph feasibility | Google, Meta | |
| Ugly Number III | 1201 | Binary search + inclusion-exclusion | ||
| K-th Smallest Prime Fraction | 786 | More specialized predicate |
Swim in Rising Water
I would not prioritize this as a Binary Search-on-Answer problem.
It is valuable, but the important lesson is really:
Binary Search
+
BFS/DFS feasibility
and the problem has other standard solutions, particularly Dijkstra.
So donβt let it take time away from the core families.
π― Your Actual Study Roadmap
If your interview is coming fast, Iβd reduce everything to this:
Phase 1 β Basic predicate
1. Koko Eating Bananas
2. Capacity to Ship Packages
3. Smallest Divisor Given Threshold
β
Phase 2 β Minimize Maximum
4. Split Array Largest Sum / Book allocation/ painter's partition
5. Minimized Maximum of Products
6. Minimum Limit of Balls in a Bag
β
Phase 3 β Maximize Minimum
7. Magnetic Force Between Two Balls / aggressive cows
8. Divide Chocolate
β
Phase 4 β Counting Predicate
9. K-th Smallest Pair Distance
10. Maximum Candies Allocated to K Children
11. K-th Smallest in Sorted Matrix
β
Phase 5 β Advanced
12. Minimize Max Distance to Gas Station
13. Ugly Number III
Thatβs the 13-problem core set Iβd use.
The patterns you should be able to recognize after these
| Pattern | Representative problem |
|---|---|
| Minimum rate | Koko |
| Minimum capacity | Ship Packages |
| Minimum threshold/divisor | Smallest Divisor |
| Minimize maximum partition | Split Array |
| Minimize maximum allocation | Minimized Maximum |
| Minimize maximum after splitting | Balls in a Bag |
| Maximize minimum distance | Magnetic Force |
| Maximize minimum value | Divide Chocolate |
| Binary search + pair counting | K-th Pair Distance |
| Binary search + value counting | K-th Smallest Matrix |
| Binary search + mathematical counting | Multiplication Table |
| Binary search + graph feasibility | Swim in Rising Water |
| Continuous answer search | Gas Station |
One thing Iβd change from the Gemini list
For your limited time, learn the pattern, then solve 1β2 variations rather than collecting dozens of nearly identical problems.
*Company tags are approximate historical interview/problem-bank tags, not guarantees of what a company will ask.