diff options
Diffstat (limited to 'datastructures/stlTree.cpp')
| -rw-r--r-- | datastructures/stlTree.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/datastructures/stlTree.cpp b/datastructures/stlTree.cpp index 6dde73a..29491c4 100644 --- a/datastructures/stlTree.cpp +++ b/datastructures/stlTree.cpp @@ -1,14 +1,16 @@ -#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace std; using namespace __gnu_pbds; -typedef tree<int, null_type, less<int>, rb_tree_tag, - tree_order_statistics_node_update> Tree; +template<typename T> +using Tree = tree<T, null_type, less<T>, rb_tree_tag, + tree_order_statistics_node_update>; int main() { - Tree X; - for (int i = 1; i <= 16; i <<= 1) X.insert(i); // {1, 2, 4, 8, 16} + Tree<int> X; + // insert {1, 2, 4, 8, 16} + for (int i = 1; i <= 16; i *= 2) X.insert(i); cout << *X.find_by_order(3) << endl; // => 8 - cout << X.order_of_key(10) << endl; // => 4 = min i, mit X[i] >= 10 + cout << X.order_of_key(10) << endl; + // => 4 = min i, mit X[i] >= 10 return 0; } |
