The Book Stacking Problem - Maple Programming Help

Online Help

All Products    Maple    MapleSim

Home : Support : Online Help : Math Apps : Discrete Mathematics : MathApps/TheBookStackingProblem

The Book Stacking Problem

Main Concept

If you were to stack n identical books on the edge of a table, what is the maximum amount of overhang that can be achieved without the stack falling over?


Simulated below is the single-wide case, where there is only one block at every given level (no counter-balancing). The maximum amount of overhang, in terms of book lengths, is given by half of the nth partial sum of the Harmonic series.


So, for a stack of n books, the largest possible distance from the edge of the table to the leading edge of the nth book is:

dn = 12Hn  = 12k=1n1k



Let dn be the maximum overhang for a stack of n identical books.

The key to obtaining the largest overhang is to have the center of gravity of n books lie directly above the table's edge, while the center of gravity of the top n 1 books lies directly over the leading edge of the bottom book.

By assigning M to be the mass of a single book, we can compute the total moment of n books with respect to the leading edge (the right edge in this simulation):

nMdn = Mdn1 + 12 + n1Mdn1

Solving for dn , we obtain the following recurrence relation:

dn = dn1 + 12n

It is obvious that d1 = 12. Since the center of gravity of a single book lies at the center of its length, the optimal way to balance it would be to have one half rest on the table, while the other half hangs over the edge.

Now, we can see that:

d2 = d1 + 122 = 12 + 14 = 121 + 12

d3 = d2 + 123 = 12 + 14 + 16= 121 + 12+13

d4 = d3 + 124 = 12 + 14 + 16 + 18 = 121 + 12+13+14

and so on...

The general formula for this relation can be written as:

dn = 121+12+13+14+...+1n

Recognizing the sum 1+12+13+14+...+1n as the Harmonic series, we can simplify this formula:

dn = 12Hn , where Hn is the nth Harmonic number


Since the Harmonic series diverges as n  , the maximum amount of overhang will become arbitrarily large as the number of books grows.


Use the slider below to choose the number of books you would like to stack. Move the books around by clicking and dragging on the plot. Then, click "Release" to check if your stack is still balanced. Try to have your stack reach the bright green line, which represents the maximum overhang possible. Click "Reset" to restart the activity.

Check the "Show Current Centers of Gravity" box to see the centers of gravity of various sub-stacks. Each dashed line shows the center of gravity of the substack of books from the top book to the book directly above that line. The complete stack is balanced when all of these dashed lines occur over a book rather than over empty space.

Click "Show the Solution!" to see the solution of the Book Stacking Problem.



Number of Books, n =



Current total overhang = book lengths

Maximum total overhang = book lengths

Current overhang for this book = book lengths

Maximum overhang for this book = book lengths


More MathApps


Download Help Document

Was this information helpful?

Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam