RMID2 - Running Median Again
The first line of the problem says "You will be given some integers in non-decreasing order". The problem asks you to report and remove the median of the list every time it is queried.
Having solved this problem, Danish now begins to wonder how to solve the problem if the input is in any order (not necessarily non-decreasing order as mentioned above).
Can you help him?
Your task is to take as input a list of positive integers. Whenever -1 is given as input, you must output the median of the list, and remove it from the list. Take the smaller element as the median in case of even number of elements.
The input contains several test caes.
The first line contains an integer t, the number of test cases.
Each test case has several lines, each containing an integer n (<=10^9) . If n is positive, add it to the list. n=-1 indicates a median query (there will be no median query if the list is empty). The test case is terminated by n=0.
In each test case, there will be upto 10^5 integers to be added to the list, and upto 10^5 median queries.
For each median query as described above, print the median on a new line.
Input: 1 9 10 2 5 1 18 -1 -1 4 3 -1 8 7 -1 0 Output: 5 9 3 7
Getting TLE when not using FAST I/O )-
AC in one go!! Comments were useful
Take care of putting new line character after each test case it cost me 2 WA :(
Insert Extra line after every test case
I am solving this problems using 2 heaps with the most optimal approach still getting TLE. Is this problem even solvable in python. Does SPOJ has time multiplier for slow languages like python like codechef and hackerearth have a time multiplier of 5 for python
AC in one go! priority queue min and max worked.
Use fast_io in c++ with cin/cout
very strict time constraints for java. No submission in java till now. switch to cpp
AC In one go :)
O(nlogn) accepted.used fast i/o with cin/cout.good problem.took lots of thinking