Coding
Data Structures

Block-Based Deque

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 C++ and Python. You are solving it in Python. Switch to C++

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

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

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

xxx xxxxxxxxxx:

  • xxxx_xxxx(x), xxxx_xxxxx(x)
  • xxxxx(), xxxx(), xxxx()
  • xxxxx_xxxxx(): xxx xxxx xxxxxx xxx xxxxxxxxx
  • xxx(x) xxx xxx(x, xxxxx), xxxx x xxxxxxx xxxx xxx xxxxx
  • xxxxx_xx(x): xxx (xxxxx, xxxxxx) xxxx xxxx xxxxx xxxxxxx x, xxxxx xxxxx xx xxx xxxx xxxxxx xxxxxx
xxxxx xxxxxxxxxx:
    xxxxx = x

    xxx __xxxx__(xxxx) -> xxxx: ...
    xxx xxxx_xxxx(xxxx, xxxxx: xxx) -> xxxx: ...
    xxx xxxx_xxxxx(xxxx, xxxxx: xxx) -> xxxx: ...
    xxx xxxxx_xx(xxxx, xxxxx: xxx) -> xxxxx[xxxx[xxx | xxxx], xxx]: ...
    xxx xxx(xxxx, xxxxx: xxx) -> xxx: ...
    xxx xxx(xxxx, xxxxx: xxx, xxxxx: xxx) -> xxxx: ...
    xxx xxxxx(xxxx) -> xxx: ...
    xxx xxxx(xxxx) -> xxx: ...
    xxx xxxx(xxxx) -> xxx: ...
    xxx xxxxx_xxxxx(xxxx) -> xxx: ...

xxxx xxxxx xx x xxxx xx x xxxxx xxx xxxx.xxxxxx xx xxx xxx. xxxxxxxxxxx.xxxxx xx xxxxxx. xxx xxxxx xxxx xxx xxxxxxxx xxxxxx xxx_xxxxx_xxxxx(xxx), xxxxx xxxxxxx x xxxx xx xxxxxxxxxx xx x xxxxx xxxxx xxx xxxxxxx xxx xxxxxx xxx xx (xx xxx xxxxxx xx). xxx xxx xxx ("xxxx_xxxx", x), ("xxxx_xxxxx", x), ("xxx", x), ("xxx", x, x), ("xxxxx",), ("xxxx",), ("xxxx",), ("xxxxx_xxxxx",), ("xxxx", x), ("xxxx",) xxx ("xxxx_xx", x). x xxxx, x xxx xxx x xxxx xxxxxx xxxx. ("xxxx", x) xxxxxxxxx xxxxx_xx(x), ("xxxx",) xxxxx xxx xxxxx xxxxxxx xxxx xxxxxxxxxx xxxxx, xxx ("xxxx_xx", x) xxxx xxxxxxx xxxxxxx x xxxxx xxxxx xx xxxx xxxx xxxxx xxxxxx xx xxxx xxxx xxxxxx.

xxxxxxxx

x = xxxxxxxxxx()
xxx x xx xxxxx(x):
    x.xxxx_xxxx(x)
x.xxxx()         # x
x.xxxxx_xxxxx()  # x

x.xxxx_xxxxx(-x) # x xxxxxx xxxxx, xx xxx xxxxx
x.xxx(x)         # -x: xxxxxxx xxx xxxxxxxxxx, xxxxxxx xx xxx

xxx xxxxxxxx xxxxx xxxxxx:

x = xxxxxxxxxx()
x.xxxx_xxxx(xxxx)
xxxxx, xxxxxx = x.xxxxx_xx(x)
xxx x xx xxxxx(xxx):
    x.xxxx_xxxx(x)
    x.xxxx_xxxxx(-x)
xxxxx[xxxxxx]               # xxxxx xxxx, xxxxx x xxxxxxxx xxxxxx
x.xxxxx_xx(xxx)[x] xx xxxxx # xxxx: xxxxxxx xxx xx xxx xxxx xxx

xxxxxxxxxxx

  • xxxxxxxx xxxx xx ( x(x) ) xxxxxxxxxx: xxxxxxx x xxxx xx xxxx xxxxxx (xxx xxxxxxxx'x xxxxx) xxxx xxx xxxx xxxxx xxxxxx xx xxx xxxxxx xxxx xxx xx xxx, xx xxxxxxx x xx xxxx.xxxxxx[(xxxx.xxxxx + x) // x][(xxxx.xxxxx + x) % x], xxx xxxxxxxxx xxx xxx xxxxxxx. xxxxxxx xxx xxxxxx xx xxxx xxxxxxx ( x ) xxxxxxx xxx xxxxxxxxx.
  • xxxxxxxx xxxx xxxxx xxxx. x xxxxx, xxxx xxxxxxxxx, xxxxx xxx xxxx xxxx xxxxxx, xxxx xxx xxxxxxxx xx xxx xxxx xxxxxxx, xxx xxx xxxxxxxx xx xxx xxxxx. xxx xxxxx xxxx xx xx xxx (xxxxx, xxxxxx) xxxx xxxx xxxxx_xx(x) xxxxxx x xxxxxxxx xxxxxx.
  • xxxxxxx xx xxx xxxxx xxx xx xxx x xxxxx xx xxxxx xx xxx xxxxxxxx xxxx. xxx xxx xxxxx xxx xxxxxxx xxx x xxxxxxxx, xx xxxxxx xxx xxx xx xx xxxxxx xx xxx xxxx xx xxxxxx xxx xxxxxxxx xxx xxxxxxx xx xxxxxx xx xxxxx.
  • x xxxx_xxxxx xxxx xx xxxx xxxx xx xxxxx xxxxxxxx x xxxxx xxxxx xxx xxxxxx xxx xxxxxxx xx xxxx xxxxx'x xxxx xxxx, xx xxxxxxxxx xxxxxx xx xxx xxxxx xxxx xx xxxxxxxxx xxxxxx xxxx x; xxxx xxxxx xxxx xxx xxxx xxxxx xxxx_xxxxx xx xx xxxxx xxxxx, xxxxx xxxxxxxxx xxxxx xx xxx xxx xx x xxxxxxx xxxxxxxxx xxxxx (xxxx.xxxxx xxxxx xx xxx xxx xxxxx xxxxx xxx xx xxxxxxxxxxx).
  • xxxxx xx xx xxx. xxxx xx xxx xxxxxxxxx, xxx x xxxx xxxxx.

This problem is only available to subscribers.

Language:
C++23Python 3.12
run_block_deque

Unlock the problem to run it against the tests.