3D Theory - Collision Detection
euclideanspace.com
euclideanspace.com
Seems to me like it should be more like the handshake problem, which comes out to n * (n-1)/2. n^2 is still bad, but not nearly as bad as n!.
However, multiplying the possible situations is, of course, wrong. A case of a wrong explanation of the final result I'd imagine (permutations instead of combinations),
When I learned about sweep and prune I was amazed at how simple and obvious it should have been, but I don't recall the first books I read on game programming ever mentioning it, I'd hope a book dedicated to collision detection topics would but I don't own one.
At least these days there are good books. Ten years ago, AFAIK, your best options for the cutting-edge concepts were GDC session notes and academic papers.
In other words, STFU GTFO.