Coding
Order Books

Auction Clearing Engine

Premium
Difficulty

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.

Available in Python and C++. You are solving it in C++. Switch to Python

xxxxxxxxx xxxxx_xxxxxxx(xxxx, xxxx), xxxxx xxxxx xxx xxxxxx xx x xxxxx xxxxxxx xxx xxxxxxx xxx xxx xxxxx xx xxxxx xxxx xxxxx, xxx xxxxxx xxxx xxxxxx xxxxx xxx xxx xxxxxxxxx.

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

xxx xxxxxxx xxxx xx xxx xxxxxxxxx xx xxxxx xxxxxx, xxxx xxxxx x xxxxx xxx x xxxxxxxx:

  • xxxx: xxxx xxxxxxx xx xxx xxx xx xxx xxxxxxxx xxxxx xx xx xxx xxxxxxxxx xxxxx.
  • xxxx: xxxx xxxxxxx xx xxxx xxx xx xxx xxxxxxxx xxxxx xxxx xx xxx xxxxxxxxx xxxxx.

xx x xxxxxxxxx xxxxxxxx xxxxx (x):

  • xxxxxx (x(x)) = xxxxx xxx xxxxxxxx xxxx xxx xxxxx (xx x)
  • xxxxxx (x(x)) = xxxxx xxx xxxxxxxx xxxx xxx xxxxx (xx x)
  • xxxxxxxxxx xxxxxx (x(x) = xxx(x(x), x(x)))
  • xxxxxxxxx (x(x) = x(x) - x(x))

xxxxxx xxx xxxxxxxx xxxxx xxxxx xxx xxxxxx xxxx xxxxxx xx xxx xxxxxx, xx xxxxx xxxxx xx xxxxx:

x. xxxxxxxx xxxxxxxxxx xxxxxx (x(x)); x. xxxxx xxxx, xxxxxxxx xxx xxxxxxxx xxxxxxxxx (|x(x)|); x. xxxxx xxxx: xxxxxx xxx xxxxxx xxxx xxxxx.

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

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

xxxx xxxxx xx x {xxxxx, xxx} xxxx xxx xxx xxxxxx xx {xxxxxxxx_xxxxx, xxxxxxxx_xxxxxx, xxxxxxxxx}, xxxx xxx::xxxxxxx xx xxx xxxxx xxxx xxx xxxxxxx xxxx xxx xxxxx.

xxxxxxxx

xxxxx_xxxxxxx({{xxx, xx}, {xxx, x}}, {{xx, x}, {xxx, x}});
// {xxx, xx, -x}
// xx xxx: xxxxxx xx (xxx xxx xxxx), xxxxxx xx (xxxx xx xx xxx xxx),
// xxxxxx xx. xxxxx xxx xxxx xx xxxxxx xxx xxxxxxxxx; xxx xx xxxxx.

xxxxx_xxxxxxx({{xx, xx}}, {{xxx, xx}});
// {xxx::xxxxxxx, x, x}
// xxxx xxx xx < xxxx xxx xxx: xxxxxxx xxxxxxx xx xxx xxxxx.

xxxxxxxxxxx

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

This problem is only available to subscribers.

Language:
Python 3.12C++23
clear_auction

Unlock the problem to run it against the tests.