Number of Flowers in Full Bloom - Problem

You are given a 0-indexed 2D integer array flowers, where flowers[i] = [starti, endi] means the ith flower will be in full bloom from starti to endi (inclusive).

You are also given a 0-indexed integer array people of size n, where people[i] is the time that the ith person will arrive to see the flowers.

Return an integer array answer of size n, where answer[i] is the number of flowers that are in full bloom when the ith person arrives.

Input & Output

Example 1 — Multiple People Different Times
$ Input: flowers = [[1,6],[3,7],[9,12]], people = [2,3,7,11]
Output: [1,2,2,1]
💡 Note: At time 2: flower [1,6] is blooming (1). At time 3: flowers [1,6] and [3,7] are blooming (2). At time 7: flowers [1,6] and [3,7] are blooming (2). At time 11: only flower [9,12] is blooming (1).
Example 2 — Single Flower
$ Input: flowers = [[1,10]], people = [5]
Output: [1]
💡 Note: Only one flower [1,10] and person arrives at time 5, which falls within the bloom period, so 1 flower is blooming.
Example 3 — No Overlapping Blooms
$ Input: flowers = [[1,2],[3,4],[5,6]], people = [2,4,6]
Output: [1,1,1]
💡 Note: Each person arrives exactly when only one flower is blooming. No time overlaps between different flowers.

Constraints

  • 1 ≤ flowers.length ≤ 5 × 104
  • flowers[i].length == 2
  • 1 ≤ starti ≤ endi ≤ 109
  • 1 ≤ people.length ≤ 5 × 104
  • 1 ≤ people[i] ≤ 109

Visualization

Tap to expand
Flower Bloom Timeline: flowers=[[1,6],[3,7],[9,12]], people=[2,3,7,11]Time1367912Flower 1: [1,6]Flower 2: [3,7]Flower 3: [9,12]237111221People arrivalsOutput: [1,2,2,1]
Understanding the Visualization
1
Input
Flower bloom intervals and people arrival times
2
Process
For each person, count overlapping flower intervals
3
Output
Array of bloom counts for each person
Key Takeaway
🎯 Key Insight: Binary search on sorted start/end arrays efficiently counts active intervals without checking each one individually
Asked in
Google 45 Amazon 38 Microsoft 32 Apple 25
58.4K Views
Medium Frequency
~25 min Avg. Time
1.8K Likes
Ln 1, Col 1
Smart Actions
💡 Explanation
AI Ready
💡 Suggestion Tab to accept Esc to dismiss
// Output will appear here after running code
Code Editor Closed
Click the red button to reopen