List Minimum (Hard)

View as PDF

Submit solution

Points: 5
Time limit: 0.4s
Racket 1.0s
Memory limit: 256M

Problem type
Brute Force Practice 1 — Hard Version

You have a list of unique numbers each no larger than 10^9. The size of the list is no greater than 10^5. You perform the following operation on the list repeatedly: take the minimum of the numbers, and remove it from the list. You stop when the list is empty.

In what order are the numbers removed?


The first line will have the size of the list.

Each line after that will be an element of the list. You are guaranteed no two elements are the same.


Print one line for each time the operation was performed: the number that was removed at that step.

Sample Input


Sample Output



  • 2
    Tony1234  commented on Nov. 19, 2020, 12:05 p.m.

    I submitted a solution in java a TLE'd then did the same code in c++ and AC'd.

  • 2
    LucaC  commented on Sept. 14, 2020, 5:48 a.m.

    Wait, is this not the same problem as List Minimum ( The instructions are worded differently, but the problem seems the same. I even used the same code for both. Could someone explain this?

    • 4
      AlanL  commented on Sept. 14, 2020, 9:58 a.m. edited

      The constraints of the problems are different. The ones in this problem are a lot larger than the other one, so some solutions (not yours apparently) that may AC the other one may fail this one.

      • 0
        bestcreatorT  commented on Sept. 25, 2020, 3:32 a.m.

        like mine

      • 4
        LucaC  commented on Sept. 15, 2020, 12:55 a.m.

        Ah, that clears things up, Thank you!

  • 0
    BULLET999  commented on Jan. 18, 2019, 10:38 p.m.

    is it me or does it take a long time to process?

  • 0
    Epic1Online  commented on Oct. 28, 2017, 11:13 p.m. edited

    Could anyone help me out? When I run my code on eclipse oxygen it works fine but when I submit it says invalid return and java.lang.NullPointerException

    EDIT: I fixed the issue, still not quite sure what caused it. However, even while using BufferedReader the last case is still giving me TLE, not sure what I can do about that...

  • 0
    FatalEagle  commented on Oct. 22, 2016, 8:26 p.m. edited

    To deal with input/output, you may want to add this to your program:

    (void (map displayln (my-sort (build-list (read) (lambda (x) (read))) <)))

  • 4
    FatalEagle  commented on Nov. 14, 2014, 10:57 a.m.

    For Java users getting TLE on the last case, reading this might be helpful.

    • 0
      IanHu  commented on Oct. 9, 2018, 7:54 p.m.

      Thx a lot