GCC Code Coverage Report


Directory: ./
Coverage: low: ≥ 0% medium: ≥ 75.0% high: ≥ 90.0%
Coverage Exec / Excl / Total
Lines: 100.0% 14 / 0 / 14
Functions: 100.0% 1 / 0 / 1
Branches: 57.1% 16 / 0 / 28

test/cpv_local/geo2d/cvh.bzoj2829.cpp
Line Branch Exec Source
1 // competitive-verifier: LOCALCASE test/cpv_local/_data/bzoj/2829
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 Line2 = line<data_t>;
10 using ConvexHull2 = cvh<data_t>;
11
12 CEXP data_t PI = std::numbers::pi_v<data_t>;
13
14 10 int main() {
15
1/2
✓ Branch 1 taken 10 times.
✗ Branch 2 not taken.
10 cout << std::fixed << std::setprecision(2);
16 10 set_eps<data_t>(1e-9);
17
18 u32 n;
19
1/2
✓ Branch 1 taken 10 times.
✗ Branch 2 not taken.
10 cin >> n;
20 data_t a, b, r;
21
3/6
✓ Branch 1 taken 10 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 10 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 10 times.
✗ Branch 8 not taken.
10 cin >> b >> a >> r;
22 10 Point2 d[4]{Point2{a / 2 - r, b / 2 - r}, Point2{-a / 2 + r, b / 2 - r}, Point2{a / 2 - r, -b / 2 + r}, Point2{-a / 2 + r, -b / 2 + r}};
23 10 vec<Point2> vp;
24
1/2
✓ Branch 1 taken 10 times.
✗ Branch 2 not taken.
10 vp.reserve(n);
25 data_t x, y, theta;
26
2/2
✓ Branch 0 taken 30209 times.
✓ Branch 1 taken 10 times.
30219 for (u32 i = 1; i <= n; ++i) {
27
3/6
✓ Branch 1 taken 30209 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 30209 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 30209 times.
✗ Branch 8 not taken.
30209 cin >> x >> y >> theta;
28 30209 Point2 c{x, y};
29
3/4
✓ Branch 3 taken 120836 times.
✗ Branch 4 not taken.
✓ Branch 5 taken 120836 times.
✓ Branch 6 taken 30209 times.
151045 for (const auto& j : d) vp.push_back(c + rot(j, theta));
30 }
31
2/4
✓ Branch 4 taken 10 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 10 times.
✗ Branch 8 not taken.
10 cout << ConvexHull2(vp).circum() + r * PI * 2 << '\n';
32 10 }
33