#include <iostream>
#include <cstdlib>
#include <ctime>
#include <vector>

using namespace std;

std::ostream& operator<<(std::ostream& os, const std::vector<int>& v)
{
    os << "{ ";
    for (auto e : v)
        os << e << ' ' ;
    return os << '}' ;
}

void divvySequence(const std::vector<int>& seq, std::vector<int>& left, std::vector<int>& right)
{
    left.clear();
    right.clear();

    for (auto term : seq)
    {
        if (rand() % 2)
            left.push_back(term);
        else
            right.push_back(term);
    }
}

int main()
{
    std::srand(std::time(0));

    unsigned nElements;
    while ( std::cout << "Number of elements:\n" && std::cin >> nElements && nElements > 0 )
    {
        std::vector<int> sequence;
        for (unsigned i = 0; i < nElements; ++i)
            sequence.push_back(i);

        std::vector<int> left, right;

        divvySequence(sequence, left, right);

        std::cout << "Original: " << sequence;
        std::cout << "\nLeft:     " << left;
        std::cout << "\nRight:    " << right << '\n';
    }
}