class Solution {
public:
void Insert(int num)
{
int cnt = heap1.size()+heap2.size();
if (cnt&1) {
heap2.push(num);
heap1.push(heap2.top());
heap2.pop();
} else {
heap1.push(num);
heap2.push(heap1.top());
heap1.pop();
}
}
double GetMedian()
{
int cnt = heap1.size()+heap2.size();
if (cnt&1) return heap2.top();
else return (heap1.top()+heap2.top())/2.0;
}
private:
priority_queue<int,vector<int>,greater<int> > heap1;
priority_queue<int,vector<int>,less<int> > heap2;
};



京公网安备 11010502036488号