Coding
Order Books

Cancel/Replace Storm

Premium
Difficulty

Asked at Akuna Capital, IMC Trading

Theory: Order Books and Matching

Read the problem, hints and solution here. The editor needs a bigger screen: open this page on a laptop to write and run your code.

xx x xxxx xxxxxxxx, xxxx xxxxx xxxx xx xxx xxx xxxxxx: xx xx x xxxxx xx xxxxxxx xxx xxxxxx/xxxxxxxx xx xxxxxx xxxxxx xxxxx xxx xxxxxx. x xxxxxxxx xxxxxx (xxx xxx xxxx xxxxxxx xxxxxxxx xxx) xxxxx xx xxxx xx xxx xxxxxxx xx xxxxxxx xxxx xxxxx, xxx xx xxxxxxx xxx xxxxxx xxxx xxxxxxx xxxxx: xxxx xxxx x xxxxxxxx xxxxx xxxx xxx xxxxx xx xxx xxxxx?

xxxxxxxx x xxxxxx-xxxx xxxx (xxxx xxxx) xxxxx x xxxxxx xx xxxxxxxxxx xxx xxxxxx xxxxxxx xxxxxxxxxxx xx xxx xxxxxx. xxxxxxxxx

xxx::xxxxxx<xxxx xxxx> xxxxxx_xxxxxxx_xxxxx(
    xxxxx xxx::xxxxxx<xxx::xxxxx<xxx, xxxx xxxx, xxxx xxxx, xxxx xxxx>>& xxx);

xxxx xxxxxxx xx x xxxxx (xx, x, x, x):

  • xx = x, xxx: xxxxx x xxxxxx xx xxxxx x xxxx xxxxxxxx x. xxx xxx xxxxx xxxxxx; x >= x. xxx xxxxx xxxxx xxx xxxx xx xxx xxxx xxxxx xx xxx xxxxx xxxxx.
  • xx = x, xxxxxx: xxxxx x xxxxxx xxx xxxx. xxxxxxxxxx xx xxxxxxx xx xxxxxxx-xxxxxxx xx xx x xx-xx.
  • xx = x, xxxxxxx: xxxxx x xxxxxxx xx xxxxx x, xxxxxxxx x (x >= x). xxxxxxxxx xx xxxxxxx xx xxxx xx xx x xx-xx. xxx xxxxxxxx xxxx:
    • xx xxx xxxxx xxxxxxx, xx xxx xxxxxxxx xxxxxxxxx, xxx xxxxx xxxxx xxxx xxxxxxxx: xx xxxxxx xxx xxxxxxx xxxxx xxx xxxxx xxx xxxx xx xxx xxxxx xx xxx xxx xxxxx.
    • xx xxx xxxxx xx xxxxxxxxx xxx xxx xxxxxxxx xxxxx xxx xxxx xx xxxxxxxxx, xxx xxxxx xxxxx xxx xxxxx xxxxxxxx.
  • xx = x, xxxx: xxxxxx xxx xxxxxxx xxxx xxx xxxxx xx xxx xxxxxx, xx -x xx xxx xxxx xx xxxxx. (x, x, x xxxxxx.)
  • xx = x, xxxxx: xxxxxx xxx xxxxx xxxx xxxxxxxx xx xxxxx x, xx x xx xxxxx xx xxxx.
  • xx = x, xxxxx: xxxxxx xxx xx xx xxx xxxxx xxxx xxx xxxxxxx xxxx xxxxxxxx (xxxxx xx xxx xxxx xxxxx) xx xxxxx x, xx -x xx xxxxx xx xx xxxx xxxxx xxxxx.

xxxxxx xxx xxxxx xxxxxxx xx xxxxxx xxxxx.

xxxxxxxx

xxxxxx_xxxxxxx_xxxxx({{x, x, xxx, x}, {x, x, xxx, x}, {x, x, xxx, x}, {x, x, x, x}, {x, xxx, x, x}, {x, xxx, x, x}, {x, x, x, x}, {x, x, x, x}})
// [xxx, x, x, xxx]  (xxxx xxx; xxxxx xx xxx xx x+x; xxxxx x xx xxxxx; xxxxx xxx xxxxxx, xxxx xxxxx xxxx xx xxx)

xxxxxx_xxxxxxx_xxxxx({{x, x, xxx, xx}, {x, x, xxx, x}, {x, xxx, x, x}, {x, x, xxx, x}, {x, xxx, x, x}, {x, xxx, x, x}, {x, x, xxx, x}, {x, xxx, x, x}, {x, xxx, x, x}, {x, x, xxx, x}, {x, xxx, x, x}, {x, x, x, x}})
// [x, x, x, x, xx, x, xxx]  (xxxxxxxx xx x xxxxx xxxxx x xx xxx xxxxx; xxxxxxxx xx x xxxxx xx xxxxxx xxxxx x; xxxxx x'x xxxxx xxxxxx xxxxx xx xx xxx)

xxxxxxxxxxx

  • xx xx (x xxxxx xx^x) xxxxxxxxxx; xxxxxx xxx xxxxxxxxxx xxx xxxxxxxx xxx xxx xx xxxx xxxx.
  • xxx xxxxxx xxxxxxxxxxx xxxx xxxxxx xxx,xxx xxxxxxxxxx xxxxxxx x xxxx xxxxxxx xx xxx xxxxx xx (xx^x) xxxx xxxxxx xxxxxx xxxxxxxxx xx xxxxx xxxxxx. xxxxxxxx xxx xxxx xxx xxx xxxxx xx xxx xxxxxx xx (x(x)) xxx xxxxxxxxx xxx xxxx xxx xxxxxx; xxx xxxx xxx-xxxxx xxxxxxxxxx xxx x xxxxxx xxxx xx xx xxxxx. xxx xxx (x(xxx x)) xx xxxxxxxxx (x(x)) xxx xxxxxxxxx.
  • xxxxxxx xxx xxxxxxxx xxxx xxx xxxxxx x xxxxx'x xxxxx; xxxxx xxxxx xxx xx xxxxxxxxxx xx xxxxx'x xxxxx xxxxx xxxxxx.

This problem is only available to subscribers.

Language: C++cancel_replace_storm
Sample tests

Unlock the problem to run it against the tests.

Next in Quant Dev 50Iceberg Orders