We've just implemented the heap data structure and the heap-sort algorithm. Now, we'll solve the K-sort problem using heaps. You can work in any programming language of your choice - Python, C++, Java, or anything else you want. Let's get started!

# Problem Statement

We're given k sorted arrays. We need to combine the sorted arrays into a single sorted array in O(n \log k) time, where n is the total number of elements in all the arrays combined.

Note: The desired complexity is O(n \log k), not O(n \log n).

**Constraints:** n \leq 5000000 and k \leq 50.