Search⌘ K
AI Features

Challenge: Greedy Algorithms

Explore how to implement and analyze a greedy algorithm that stores a fixed sequence of books on shelves using the fewest shelves possible. Learn to apply this approach under constraints on shelf length and book thickness, and understand its O(n) time complexity.

Let's practice what we have learned so far.

Task

We’ve been hired to store a sequence of nn books on shelves in a library. The order of the books is fixed by the cataloging system and cannot be changed; each shelf must store a contiguous interval of the given sequence of books. We are given two arrays H[1..n]H[1 .. n] and T[1..n]T[1 .. n], where H[i]H[i] and T[i]T[i] are respectively the height and thickness of the iith book in the sequence. All shelves in this library have the same length LL; the total thickness of all books on any single shelf cannot exceed LL. Suppose all the books have the same height ...