What did you learn? Two heaps can partition data around a median (or any percentile).
The insertion order (add to one, transfer, rebalance) ensures both invariants are maintained.
This pattern generalizes: use two heaps whenever you need efficient access to a "middle" element. Applications: sliding window median, stream percentiles, game matchmaking (median skill).