#include <algorithm>
#include <vector>
class Solution {
private:
    vector<int> arr;
    int itr1,itr2;
public:
    void insert(vector<int>& arr,int num)
    {
        arr.insert(lower_bound(arr.begin(), arr.end(),num),num);
    }
    void Insert(int num) {
        cout<<"inserting "<<num<<endl;
        if(arr.size()==0)
        {
            insert(arr,num);
            itr1=0;
            itr2=itr1;
            cout<<"itr1 itr2 "<<arr[itr1]<<endl;
        }
        else {
            if(arr.size()%2)
            {
                insert(arr,num);
                itr2++;
                cout<<"itr2"<<endl;
                cout<<arr[itr2]<<endl;
            }
            else
            {
                insert(arr,num);
                itr1++;
                cout<<"itr1"<<endl;
                cout<<arr[itr1]<<endl;
            }
        }
    }

    double GetMedian() { 
        return (arr[itr1]+arr[itr2])/2.0;
    }

};