Back to trackQuant Developer
Next
Track progress147 items
C++ Internals

std::move Traps

Premium
Difficulty

Asked at Squarepoint Capital, Akuna Capital

Theory: C++ Internals

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.

xxxxx xxx::xxxx xxx xxx xxxxxxxxx xxxxxxxxx xx xxxxx xxxxxxxxx xxxxxxxxx, xxxx xx xxxxxxxxxxxx xxxxxx xxxx xxxxxxxx xxxxx xxxx xxx xxxx xxx xxxxx.

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

xxxxxxxxx xxxxx xxxxxxxxx xxxx xxx xxxxxxxx xxxxxx (xxxxxx xxxxxx xxx xxxxx; x xxxxx-xxxx xxxxxx xxxxx -x) xxx xxx (x xxx() xxxx xxxxxxx xxx xxxxxx xxxxxxxxx):

x. xxxxxx::xxx(xxxxxx x): x xx-xxxxx xxxx. xxxxxxx xxx xxxxxxxxx xxxx xxx xxxxxx xxxxxx xxxx xx xxxx xxxxxx xxx xxx xxx xxxxxx xxxxxxx xxxx xx xxxxxx x. xxxxxxx xxx xxxx x xxxxxxxxx xxxx xxxx xxxx xxxxxx xxx xxxxxxx xxx xxxx; xxxxxxx xx xxxx xx xxxxxx xxxxx xxxxxxx xxx xxxx (xxxx xxx xxxxxxxxx) xxxx xxxx xxx xxxx. x. xxxxxx xxxx_xxxxx(xxxx xxxx x): xxxxxx x xxxxxx xxxxx xxxxx xx (x^x), xxxxxxxxxxxx xxx xxxxxx xx xxx xxxxxx xxxxxxxxx xxxxxx (x xxxxxxx), xx xxxx xxx xxxxxx xxxxxxxx xxxx xxxxxx xxx xxxx xxxxx. xxxxxxxxxx xxxx xxxxxxx (x++xx) xxxx xxxx xxx xxx, xx xxx xxx xx. x. xxxxxxxx <xxxxxxxx x> xxxx xxxxx(xxx& xxx, x&& x): xxxx x xxxx xxx.xxx() xxxxxxxxxx xxx xxxxxx'x xxxxx xxxxxxxx: xx xxxxxx xxxxxxxx xxxx xxxxx xxx xxxxxxx xxxxxxxx xxx xxxxxx xxxxxx xxxxxxxxxx; xx xxxxxx xxxxxxxx xxxx xxxxx xxx xxxxxx xxxxxxxx.

xx xxx xxxxxx xxxxxx, xxx, xx xxx xxxxxxxxx xxxxxxxxxxxxxxx.

xxxxxxxx

[]{ xxxxxxxxx::xxxxx_xxxxxxxx(); xxxxxx x; x.xxx(xxxxxx(x)); xxxxxx xxx::xxxxx<xxxx xxxx, xxxx xxxx, xxxx xxxx>(x.xxxxxx.xxxxx, xxxxxxxxx::xxxxxx(), xxxxxxxxx::xxxxx()); }()
// (x, x, x)  (xxxxxxxxx xxxxxxxxxxx xxxxxxxx xxxx xxx xxxxxxxxx, xxxx xxxxx xxxx xxx xxxxxx)

[]{ xxxxxxxxx::xxxxx_xxxxxxxx(); xxxxxx x(x); xxxxxx x; x.xxx(x); xxxxxx xxx::xxxxx<xxxx xxxx, xxxx xxxx, xxxx xxxx, xxxx xxxx>(x.xxxxxx.xxxxx, x.xxxxx, xxxxxxxxx::xxxxxx(), xxxxxxxxx::xxxxx()); }()
// (x, x, x, x)  (xxx xxxx xxxx xxx xxxxxxxxx, xxx xxxx xxxx xxx xxxxxx, xxxxxx xxxxxxxxx)

xxxxxxxxxxx

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

This problem is only available to subscribers.

Language: C++23Tracer

Unlock the problem to run it against the tests.