Animation frames in ASCII:
_____ . _____
/ \___ ____/ \
/ \ . / \
_____ . _____
/ \___ ____/ \
/ \./ \
_____ . _____
/ \___ ____/ \
/ | \
_____ . _____
/ \_/ \__/ \
/ | \
The dots at the center of the collision demarcate a virtual brick wall that either car experiences due to the exact and opposite momentum and deceleration of the other.Each car crumples against the dotted line, not passing through it at all.
(In our idealized example with a perfectly mirror-like collision in which both cars crumple identically, it behaves like an ideal brick wall: the worst kind.)
Hitting an ideal brick wall at 50 is far less severe than doing so at 100.
If the collision is perfectly inelastic, then in the two car case, the energy dissipated is 2mv² where v is 50 mph. In in the one car case where it is going double (2v) it the energy is m(2v)² which is 4mv². We assume the brick wall has no kinetic energy to contribute. We also assume the brick wall is not damaged so the 4mv² is absorbed by one car. Whereas in the two car case 2mv² energy is absorbed by two cars, so mv² each.
Thus, from the point of view of one car, the 100 mph brick wall collision is 4 times more energetic than the 50 mph head-on collision. From that alone you can intuit that head-on is same as brick wall, since the damage scales 4 times with a doubling in velocity.
(Now yes, hitting an identical parked car at 100 mph would me more similar to the head-on collision. A parked car is not a brick wall. It will move in the direction of the collision in addition to crumpling. Books for drivers should probably not talk about either brick walls or parked cars, but just convey that kinetic energy follows a square law, quadrupling when speed doubles.)