Нет, вы не можете вернуть 2 результата из метода, как в этом примере.
vector<int>, vector<int> merge_sort();
Что вы можете сделать, это передать 2 вектора по ссылке на функцию, и результирующий вектор с слиянием влияет на 2 вектора...eg
void merge_sort(vector<int>& x, vector<int>& y);
В конечном счете, вы можете сделать то, что упомянуто @ JoshD , и создать struct
вызываемую точку и объединить вместо нее вектор структуры точек.