GCC Code Coverage Report


Directory: ./
Coverage: low: ≥ 0% medium: ≥ 75.0% high: ≥ 90.0%
Coverage Exec / Excl / Total
Lines: 100.0% 17 / 0 / 17
Functions: 100.0% 1 / 0 / 1
Branches: 70.0% 21 / 0 / 30

test/cpv_local/geo2d/cvh_contains.uva109.cpp
Line Branch Exec Source
1 // competitive-verifier: LOCALCASE test/cpv_local/_data/uva/109
2
3 #include "../../../src/geo2d/ds/cvh/lib.hpp"
4
5 using namespace tifa_libs;
6 using std::cin, std::cout;
7 using data_t = f64;
8 using Point2 = point<data_t>;
9 using ConvexHull2 = cvh<data_t>;
10
11 3 int main() {
12
1/2
✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
3 cout << std::fixed << std::setprecision(2);
13
14 3 vec<ConvexHull2> vpolys;
15 int n;
16
3/4
✓ Branch 1 taken 19 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 16 times.
✓ Branch 4 taken 3 times.
19 while ((cin >> n), ~n) {
17
1/2
✓ Branch 1 taken 16 times.
✗ Branch 2 not taken.
16 vpolys.emplace_back(n);
18 16 cin >> vpolys.back();
19 16 vpolys.back().init();
20 }
21 3 auto sz = vpolys.size();
22
1/2
✓ Branch 1 taken 3 times.
✗ Branch 2 not taken.
3 vecb destroyed(sz);
23 3 kahan<data_t> destroyed_area = 0;
24 Point2 missile;
25
3/4
✓ Branch 2 taken 76 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 73 times.
✓ Branch 5 taken 3 times.
76 while (cin >> missile) {
26
2/2
✓ Branch 0 taken 778 times.
✓ Branch 1 taken 73 times.
851 flt_ (usz, i, 0, sz)
27
7/8
✓ Branch 1 taken 778 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 409 times.
✓ Branch 5 taken 369 times.
✓ Branch 8 taken 12 times.
✓ Branch 9 taken 397 times.
✓ Branch 10 taken 12 times.
✓ Branch 11 taken 766 times.
778 if (!destroyed[i] && vpolys[i].contains(missile)) {
28
1/2
✓ Branch 1 taken 12 times.
✗ Branch 2 not taken.
12 destroyed[i] = true;
29 12 destroyed_area += vpolys[i].area();
30 }
31 }
32
2/4
✓ Branch 2 taken 3 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 3 times.
✗ Branch 6 not taken.
3 cout << destroyed_area << '\n';
33 3 }
34