Order book Yuriy Lyfenko

Simulate a sell-side order book and calculate the cost of a final purchase as fast as possible.

Input

1,000,000 order updates on STDIN, one per line:

  • + <price> <size> – add a new sell order
  • - <position> – delete the order at the given position
  • = <size> – buy <size> shares from the top of the order book

After all updates are processed, buy 1,000 shares from the top of the order book.

Output

Print the total cost of the final 1,000-share purchase to STDOUT.

Order Book Rules

Orders are sorted by price ascending (lower is better). Orders at the same price are sorted by arrival time (earlier first). Position 0 is the best (lowest-price) offer.

The = (buy) operation consumes shares starting from position 0. If an order is fully consumed, it is removed from the book.

Example

Input Order book state
+ 1137 100 (1137,100)
+ 1130 10 (1130,10), (1137,100)
+ 1130 50 (1130,10), (1130,50), (1137,100)
- 0 (1130,50), (1137,100)
+ 1150 200 (1130,50), (1137,100), (1150,200)
= 200 (1150,150)

Total cost of the last buy: 50 * 1130 + 100 * 1137 + 50 * 1150.

Date AuthorLanguageStatus Score
Dec 19, 2025 16:55Josu San MartinJosu San MartinRUSTrust-1.92.0Success61,872+3.00 RP
Dec 19, 2025 16:41HattonuriHattonuriCPPg++13.3.0Success37,057
Dec 19, 2025 16:40HattonuriHattonuriCPPg++13.3.0Success38,014
Dec 19, 2025 16:32HattonuriHattonuriCPPg++13.3.0Success39,476
Dec 19, 2025 16:30HattonuriHattonuriCPPg++13.3.0Success35,347+5.39 RP
Dec 19, 2025 16:29HattonuriHattonuriCPPg++13.3.0Success36,234
Dec 19, 2025 16:22Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 15:28Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 15:20Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 15:18Josu San MartinJosu San MartinRUSTrust-1.92.0Success62,991+4.04 RP
Dec 19, 2025 15:11HattonuriHattonuriCPPg++13.3.0Success36,967
Dec 19, 2025 14:56HattonuriHattonuriCPPg++13.3.0Success41,186
Dec 19, 2025 14:52HattonuriHattonuriCPPg++13.3.0Success38,278
Dec 19, 2025 14:50HattonuriHattonuriCPPg++13.3.0Success36,034+2.52 RP
Dec 19, 2025 14:47HattonuriHattonuriCPPg++13.3.0Success40,681
Dec 19, 2025 14:40HattonuriHattonuriCPPg++13.3.0Success37,298
Dec 19, 2025 14:34Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 14:31Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success114,021
Dec 19, 2025 14:30Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success109,860
Dec 19, 2025 14:26Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success106,284
Dec 19, 2025 14:18Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success105,069
Dec 19, 2025 14:16Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success102,029+4.37 RP
Dec 19, 2025 14:12Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success127,281
Dec 19, 2025 14:10Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success122,157
Dec 19, 2025 14:08Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success166,233
Dec 19, 2025 14:05Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success136,076
Dec 19, 2025 14:01Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success208,514
Dec 19, 2025 13:53Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success106,786+7.02 RP
Dec 19, 2025 13:49Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success115,434+39.69 RP
Dec 19, 2025 13:42Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Error
Dec 19, 2025 13:40Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Error
Dec 19, 2025 13:33Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success213,555
Dec 19, 2025 13:32Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success329,584
Dec 19, 2025 13:30Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success213,059+3.01 RP
Dec 19, 2025 13:25Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success227,655+0.60 RP
Dec 19, 2025 13:14Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success230,788+25.53 RP
Dec 19, 2025 13:06Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Error
Dec 19, 2025 13:05Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success677,602
Dec 19, 2025 13:04Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success683,914
Dec 19, 2025 12:59Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success675,059
Dec 19, 2025 12:51Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success912,357
Dec 19, 2025 12:48Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success562,874
Dec 19, 2025 12:47Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success575,881
Dec 19, 2025 12:46Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success571,276
Dec 19, 2025 12:45Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success577,316
Dec 19, 2025 12:44Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Error
Dec 19, 2025 12:41Tim ZhamoidinTim ZhamoidinCPPclang++18.1.3Success561,898+0.43 RP
Dec 19, 2025 12:37Tim ZhamoidinTim ZhamoidinCPPg++13.3.0Error
Dec 19, 2025 12:35Tim ZhamoidinTim ZhamoidinCPPg++13.3.0Success575,700+17.37 RP
Dec 19, 2025 10:21Wookyung JeongWookyung JeongCPPg++13.3.0Success32,147+6.57 RP
Dec 19, 2025 07:56Wookyung JeongWookyung JeongCPPg++13.3.0Success32,841+1.47 RP
Dec 19, 2025 06:22Josu San MartinJosu San MartinRUSTrust-1.92.0Success64,636+0.49 RP
Dec 19, 2025 06:21Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 06:21Josu San MartinJosu San MartinRUSTrust-1.92.0Success69,779
Dec 19, 2025 06:21Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 06:20Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 06:19Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 06:17Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 06:15Josu San MartinJosu San MartinRUSTrust-1.92.0Success72,350
Dec 19, 2025 06:14Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 06:13Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 06:11Josu San MartinJosu San MartinRUSTrust-1.92.0Success96,598
Dec 19, 2025 06:09Josu San MartinJosu San MartinRUSTrust-1.92.0Success68,147
Dec 19, 2025 06:07Josu San MartinJosu San MartinRUSTrust-1.92.0Success67,143
Dec 19, 2025 06:06Josu San MartinJosu San MartinRUSTrust-1.92.0Success66,278
Dec 19, 2025 06:05Josu San MartinJosu San MartinRUSTrust-1.92.0Success66,207
Dec 19, 2025 06:03Josu San MartinJosu San MartinRUSTrust-1.92.0Success64,840+4.34 RP
Dec 19, 2025 06:00Josu San MartinJosu San MartinRUSTrust-1.92.0Success70,986
Dec 19, 2025 06:00Josu San MartinJosu San MartinRUSTrust-1.92.0Success86,652
Dec 19, 2025 05:59Josu San MartinJosu San MartinRUSTrust-1.92.0Success70,483
Dec 19, 2025 05:59Josu San MartinJosu San MartinRUSTrust-1.92.0Success68,003
Dec 19, 2025 05:57Josu San MartinJosu San MartinRUSTrust-1.92.0Success80,460
Dec 19, 2025 05:56Josu San MartinJosu San MartinRUSTrust-1.92.0Success70,710
Dec 19, 2025 05:56Josu San MartinJosu San MartinRUSTrust-1.92.0Success67,162
Dec 19, 2025 05:56Josu San MartinJosu San MartinRUSTrust-1.92.0Success68,784
Dec 19, 2025 05:55Josu San MartinJosu San MartinRUSTrust-1.92.0Success66,717+2.65 RP
Dec 19, 2025 05:53Josu San MartinJosu San MartinRUSTrust-1.92.0Success67,916+4.28 RP
Dec 19, 2025 05:48Josu San MartinJosu San MartinRUSTrust-1.92.0Success86,343
Dec 19, 2025 05:47Josu San MartinJosu San MartinRUSTrust-1.92.0Success76,172
Dec 19, 2025 05:47Josu San MartinJosu San MartinRUSTrust-1.92.0Success69,947+23.42 RP
Dec 19, 2025 05:44Josu San MartinJosu San MartinRUSTrust-1.92.0Success83,843
Dec 19, 2025 05:43Josu San MartinJosu San MartinRUSTrust-1.92.0Success88,178
Dec 19, 2025 05:42Josu San MartinJosu San MartinRUSTrust-1.92.0Success88,847
Dec 19, 2025 05:41Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 05:40Josu San MartinJosu San MartinRUSTrust-1.92.0Success83,650+0.20 RP
Dec 19, 2025 05:36Josu San MartinJosu San MartinRUSTrust-1.92.0Success83,838
Dec 19, 2025 05:36Josu San MartinJosu San MartinRUSTrust-1.92.0Success83,788+3.58 RP
Dec 19, 2025 05:34Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 19, 2025 05:33Josu San MartinJosu San MartinRUSTrust-1.92.0Success112,853
Dec 19, 2025 05:29Josu San MartinJosu San MartinRUSTrust-1.92.0Success86,376+2.46 RP
Dec 19, 2025 05:25Josu San MartinJosu San MartinRUSTrust-1.92.0Success88,253+6.93 RP
Dec 19, 2025 05:23Josu San MartinJosu San MartinRUSTrust-1.92.0Success94,003+0.65 RP
Dec 19, 2025 05:15Josu San MartinJosu San MartinRUSTrust-1.92.0Success94,584+1.20 RP
Dec 19, 2025 05:14Josu San MartinJosu San MartinRUSTrust-1.92.0Success98,764
Dec 19, 2025 05:10Josu San MartinJosu San MartinRUSTrust-1.92.0Success95,669+2.04 RP
Dec 19, 2025 04:34HattonuriHattonuriCPPg++13.3.0Error
Dec 19, 2025 04:32HattonuriHattonuriCPPg++13.3.0Success41,197
Dec 19, 2025 03:22HattonuriHattonuriCPPg++13.3.0Success38,164
Dec 19, 2025 03:22HattonuriHattonuriCPPg++13.3.0Error
Dec 19, 2025 03:21HattonuriHattonuriCPPg++13.3.0Error