GCC Code Coverage Report


Directory: ./
Coverage: low: ≥ 0% medium: ≥ 75.0% high: ≥ 90.0%
Coverage Exec / Excl / Total
Lines: 100.0% 25 / 0 / 25
Functions: 100.0% 1 / 0 / 1
Branches: 59.0% 23 / 0 / 39

test/cpv_local/ds/fhq_treap.bzoj3224.cpp
Line Branch Exec Source
1 // competitive-verifier: LOCALCASE test/cpv_local/_data/bzoj/3224
2
3 #include "../../../src/ds/bst/fhq/lib.hpp"
4
5 using namespace tifa_libs;
6 using std::cin, std::cout;
7 10 int main() {
8 u32 n;
9
1/2
✓ Branch 1 taken 10 times.
✗ Branch 2 not taken.
10 cin >> n;
10
1/2
✓ Branch 1 taken 10 times.
✗ Branch 2 not taken.
10 fhq_treap<i32> treap;
11
2/2
✓ Branch 0 taken 361180 times.
✓ Branch 1 taken 10 times.
361190 for (u32 i = 0, opt; i < n; ++i) {
12 i32 x;
13
2/4
✓ Branch 1 taken 361180 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 361180 times.
✗ Branch 5 not taken.
361180 cin >> opt >> x;
14
6/7
✓ Branch 0 taken 181263 times.
✓ Branch 1 taken 36651 times.
✓ Branch 2 taken 35837 times.
✓ Branch 3 taken 36872 times.
✓ Branch 4 taken 35430 times.
✓ Branch 5 taken 35127 times.
✗ Branch 6 not taken.
361180 switch (opt) {
15 181263 case 1:
16 181263 treap.insert(x);
17 181263 break;
18 36651 case 2:
19 36651 treap.erase(x);
20 36651 break;
21 35837 case 3:
22
2/4
✓ Branch 2 taken 35837 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 35837 times.
✗ Branch 6 not taken.
35837 cout << (int)treap.rank(x) << '\n';
23 35837 break;
24 36872 case 4:
25
3/6
✓ Branch 2 taken 36872 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 36872 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 36872 times.
✗ Branch 9 not taken.
36872 cout << treap.kth((u32)x).value() << '\n';
26 36872 break;
27 35430 case 5:
28
3/6
✓ Branch 2 taken 35430 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 35430 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 35430 times.
✗ Branch 9 not taken.
35430 cout << treap.prev(x).value() << '\n';
29 35430 break;
30 35127 case 6:
31
3/6
✓ Branch 2 taken 35127 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 35127 times.
✗ Branch 6 not taken.
✓ Branch 8 taken 35127 times.
✗ Branch 9 not taken.
35127 cout << treap.next(x).value() << '\n';
32 35127 break;
33 }
34 }
35 10 }
36