Problem 2. Write an algorithm called mergesort3 that sorts an array S of n ints by
1. dividing the array into three subarrays of approximately $\frac{n}{3}$ ints,
2. sorting each subarray using recursion, and
3. merging the three sorted subarrays.
A few notes: this algorithm will be very similar to mergesort (page 59), except that we are splitting
the array into three subarrays. The algorithm's heading should look like this:
void mergesort3(int n, int S[])
You may assume that you already have an algorithm
void merge(int h, int m, int t, const int U[], const int V[], const int W[], int S[])
that merges an array U of size h, an array V of size m, and an array W of size t into the sorted array
S. So you don't have to write merge, you just need to call it within your mergesort3 algorithm.