#include #include #include #include #include using namespace std; int main() { ios::sync_with_stdio(false); int n, input; cin >> n; priority_queue maxHeap; priority_queue, greater> minHeap; cout << fixed << setprecision(1); for(int ind = 0; ind < n; ++ind) { cin >> input; if (maxHeap.empty() && minHeap.empty()) { maxHeap.push(input); } else if (input <= maxHeap.top()) { if (maxHeap.size() == minHeap.size() + 1) { minHeap.push(maxHeap.top()); maxHeap.pop(); } maxHeap.push(input); } else if (!minHeap.empty() && input >= minHeap.top()) { if (minHeap.size() == maxHeap.size()) { maxHeap.push(minHeap.top()); minHeap.pop(); } minHeap.push(input); } else { if (minHeap.size() == maxHeap.size()) { maxHeap.push(input); } else { minHeap.push(input); } } double median; if (minHeap.size() == maxHeap.size()) { median = (double)(maxHeap.top() + minHeap.top()) / 2.0; } else { median = maxHeap.top(); } cout << median << endl; } return 0; }