平衡二分探索木
取り得る最大の値を$ Lとして、
構築:$ O(1)
要素の追加:$ O(\log L)
要素の削除:$ O(\log L)
クエリの値より真に小さい(大きい)要素の検索:$ O(\log L)
重複のない順序付き集合。多重集合を扱いたい時はdefaultdictなどと併用することで実装できる。
平衡二分木を実装する / @Kiri8128