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 22, 2025 14:56Josu San MartinJosu San MartinCPPg++13.3.0Success37,433
Dec 22, 2025 14:56Josu San MartinJosu San MartinCPPg++13.3.0Success36,855
Dec 22, 2025 14:54Josu San MartinJosu San MartinCPPclang++18.1.3Success38,152
Dec 22, 2025 14:54Josu San MartinJosu San MartinCPPclang++18.1.3Success37,972
Dec 22, 2025 14:53Josu San MartinJosu San MartinCPPg++13.3.0Success37,790
Dec 22, 2025 14:53Josu San MartinJosu San MartinCPPg++13.3.0Success37,759
Dec 22, 2025 14:53Josu San MartinJosu San MartinCPPclang++18.1.3Success37,060
Dec 22, 2025 14:52Josu San MartinJosu San MartinCPPg++13.3.0Success37,597
Dec 22, 2025 14:52Josu San MartinJosu San MartinCPPg++13.3.0Success36,429+0.57 RP
Dec 22, 2025 14:51Josu San MartinJosu San MartinCPPg++13.3.0Success37,162
Dec 22, 2025 14:51Josu San MartinJosu San MartinCPPg++13.3.0Success36,605
Dec 22, 2025 14:51Josu San MartinJosu San MartinCPPg++13.3.0Success37,045
Dec 22, 2025 14:50Josu San MartinJosu San MartinCPPg++13.3.0Success36,710
Dec 22, 2025 14:50Josu San MartinJosu San MartinCPPg++13.3.0Success37,466
Dec 22, 2025 14:49Josu San MartinJosu San MartinCPPg++13.3.0Success37,762
Dec 22, 2025 14:49Josu San MartinJosu San MartinCPPg++13.3.0Success37,733
Dec 22, 2025 08:46Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Success215,607
Dec 22, 2025 05:25RussellStrongRussellStrongRUSTrust-1.92.0Success378,457
Dec 22, 2025 05:24Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Success209,190
Dec 22, 2025 05:23Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Success216,986
Dec 22, 2025 05:21RussellStrongRussellStrongRUSTrust-1.92.0Success350,040+6.60 RP
Dec 22, 2025 05:20Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Success215,686
Dec 22, 2025 05:18Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 22, 2025 05:17Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 22, 2025 05:15Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 22, 2025 05:12Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 22, 2025 05:09Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 22, 2025 05:04Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 22, 2025 04:48RussellStrongRussellStrongRUSTrust-1.92.0Success455,119+17.92 RP
Dec 22, 2025 04:27Josu San MartinJosu San MartinCPPg++13.3.0Success39,640
Dec 22, 2025 04:26Josu San MartinJosu San MartinCPPg++13.3.0Success36,931
Dec 22, 2025 04:23Josu San MartinJosu San MartinCPPg++13.3.0Success37,912
Dec 22, 2025 04:23Josu San MartinJosu San MartinCPPg++13.3.0Success38,343
Dec 22, 2025 04:20Josu San MartinJosu San MartinCPPg++13.3.0Success36,519
Dec 22, 2025 04:19Josu San MartinJosu San MartinCPPclang++18.1.3Success38,222
Dec 22, 2025 04:19Josu San MartinJosu San MartinCPPclang++18.1.3Success37,750
Dec 22, 2025 04:18Josu San MartinJosu San MartinCPPclang++18.1.3Success38,388
Dec 22, 2025 04:16Josu San MartinJosu San MartinGOgo1.25.5Success71,259
Dec 22, 2025 04:15Josu San MartinJosu San MartinGOgo1.25.5Success122,857
Dec 22, 2025 04:14Josu San MartinJosu San MartinGOgo1.25.5Success123,252
Dec 22, 2025 04:13Josu San MartinJosu San MartinCPPg++13.3.0Success56,234
Dec 22, 2025 04:12Josu San MartinJosu San MartinCPPg++13.3.0Success57,340
Dec 22, 2025 04:11Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 22, 2025 04:11Josu San MartinJosu San MartinRUSTrust-1.92.0Success39,893
Dec 22, 2025 04:11Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 22, 2025 04:09Josu San MartinJosu San MartinCPPg++13.3.0Success37,343
Dec 22, 2025 04:08Josu San MartinJosu San MartinCPPg++13.3.0Success36,888
Dec 22, 2025 04:08Josu San MartinJosu San MartinCPPg++13.3.0Success37,131
Dec 22, 2025 04:08Josu San MartinJosu San MartinCPPg++13.3.0Success36,529
Dec 22, 2025 04:04Josu San MartinJosu San MartinCPPg++13.3.0Success111,021
Dec 22, 2025 04:04Josu San MartinJosu San MartinCPPg++13.3.0Success99,931
Dec 22, 2025 04:04Josu San MartinJosu San MartinCPPg++13.3.0Success312,055
Dec 22, 2025 04:03Josu San MartinJosu San MartinCPPg++13.3.0Success90,010
Dec 22, 2025 04:03Josu San MartinJosu San MartinCPPg++13.3.0Success90,283
Dec 22, 2025 04:03RussellStrongRussellStrongRUSTrust-1.92.0Success2,469,883+4.05 RP
Dec 22, 2025 03:06Josu San MartinJosu San MartinCPPg++13.3.0Success36,736
Dec 22, 2025 03:06Josu San MartinJosu San MartinCPPg++13.3.0Success36,790
Dec 22, 2025 03:05Josu San MartinJosu San MartinCPPg++13.3.0Success36,972
Dec 22, 2025 02:51Josu San MartinJosu San MartinRUSTrust-1.92.0Success51,914
Dec 22, 2025 02:39Josu San MartinJosu San MartinRUSTrust-1.92.0Success39,026
Dec 22, 2025 02:30Josu San MartinJosu San MartinCPPg++13.3.0Success36,838
Dec 22, 2025 01:56Josu San MartinJosu San MartinRUSTrust-1.92.0Success52,440
Dec 22, 2025 01:54Josu San MartinJosu San MartinCPPg++13.3.0Success37,786
Dec 22, 2025 01:54Josu San MartinJosu San MartinCPPg++13.3.0Success37,098
Dec 22, 2025 01:54Josu San MartinJosu San MartinCPPg++13.3.0Success39,036
Dec 22, 2025 01:51Josu San MartinJosu San MartinRUSTrust-1.92.0Success37,838
Dec 22, 2025 01:50Josu San MartinJosu San MartinRUSTrust-1.92.0Success37,950
Dec 22, 2025 01:47Josu San MartinJosu San MartinCPPg++13.3.0Success36,838
Dec 22, 2025 01:46Josu San MartinJosu San MartinCPPg++13.3.0Success36,505+0.09 RP
Dec 22, 2025 01:46Josu San MartinJosu San MartinCPPg++13.3.0Success36,921
Dec 22, 2025 01:45Josu San MartinJosu San MartinRUSTrust-1.92.0Success37,240
Dec 22, 2025 01:41Josu San MartinJosu San MartinRUSTrust-1.92.0Success38,257
Dec 22, 2025 01:40Josu San MartinJosu San MartinRUSTrust-1.92.0Success38,472
Dec 22, 2025 01:40Josu San MartinJosu San MartinCPPg++13.3.0Success37,028
Dec 22, 2025 01:40Josu San MartinJosu San MartinCPPg++13.3.0Success36,883
Dec 22, 2025 01:40Josu San MartinJosu San MartinCPPg++13.3.0Success36,538
Dec 22, 2025 01:38Josu San MartinJosu San MartinRUSTrust-1.92.0Success47,519
Dec 22, 2025 01:37Josu San MartinJosu San MartinRUSTrust-1.92.0Success49,216
Dec 22, 2025 01:37Josu San MartinJosu San MartinRUSTrust-1.92.0Error
Dec 22, 2025 00:31HattonuriHattonuriCPPg++13.3.0Success31,047+0.99 RP
Dec 22, 2025 00:27HattonuriHattonuriCPPg++13.3.0Success31,948
Dec 22, 2025 00:10HattonuriHattonuriCPPg++13.3.0Success31,266
Dec 21, 2025 23:53HattonuriHattonuriCPPg++13.3.0Success31,226
Dec 21, 2025 23:49HattonuriHattonuriCPPg++13.3.0Error
Dec 21, 2025 23:08HattonuriHattonuriCPPg++13.3.0Success31,143+11.25 RP
Dec 21, 2025 21:22Aleksandr KrotovAleksandr KrotovCPPg++13.3.0Success1,285,360+0.06 RP
Dec 21, 2025 21:22Aleksandr KrotovAleksandr KrotovCPPg++13.3.0Success1,295,431+7.72 RP
Dec 21, 2025 20:34Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 21, 2025 20:31Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 21, 2025 20:28Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 21, 2025 20:26Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 21, 2025 20:24Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 21, 2025 20:18Liquidity GoblinLiquidity GoblinRUSTrust-1.92.0Error
Dec 21, 2025 19:08Josu San MartinJosu San MartinCPPg++13.3.0Success37,112
Dec 21, 2025 19:07Josu San MartinJosu San MartinCPPg++13.3.0Success37,274
Dec 21, 2025 19:07Josu San MartinJosu San MartinCPPg++13.3.0Success37,131
Dec 21, 2025 19:07Josu San MartinJosu San MartinCPPg++13.3.0Success36,881
Dec 21, 2025 19:04Josu San MartinJosu San MartinCPPg++13.3.0Success36,734
Dec 21, 2025 19:04Josu San MartinJosu San MartinCPPg++13.3.0Success37,303
Dec 21, 2025 19:00Josu San MartinJosu San MartinCPPg++13.3.0Error