test/cpv/library-checker-graph/bipartitematching.dinic.cpp
| Line | Branch | Exec | Source |
|---|---|---|---|
| 1 | // competitive-verifier: PROBLEM https://judge.yosupo.jp/problem/bipartitematching | ||
| 2 | #include "../../../src/graph/nf/dinic/lib.hpp" | ||
| 3 | |||
| 4 | using namespace tifa_libs; | ||
| 5 | 44 | int main() { | |
| 6 |
1/2✓ Branch 2 taken 44 times.
✗ Branch 3 not taken.
|
44 | std::cin.tie(nullptr)->std::ios::sync_with_stdio(false); |
| 7 | u32 l, r, m; | ||
| 8 |
3/6✓ Branch 1 taken 44 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 44 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 44 times.
✗ Branch 8 not taken.
|
44 | std::cin >> l >> r >> m; |
| 9 | 44 | u32 s = l + r, t = l + r + 1; | |
| 10 | 44 | dinic big(l + r + 2); | |
| 11 |
2/2✓ Branch 1 taken 3318098 times.
✓ Branch 2 taken 44 times.
|
3318142 | flt_ (u32, i, 0, l) big.add(s, i, 1); |
| 12 |
2/2✓ Branch 1 taken 3284045 times.
✓ Branch 2 taken 44 times.
|
3284089 | flt_ (u32, i, 0, r) big.add(i + l, t, 1); |
| 13 |
4/6✓ Branch 1 taken 7273057 times.
✗ Branch 2 not taken.
✓ Branch 4 taken 7273057 times.
✗ Branch 5 not taken.
✓ Branch 7 taken 7273057 times.
✓ Branch 8 taken 44 times.
|
7273101 | for (u32 i = 0, u, v; i < m; ++i) std::cin >> u >> v, big.add(u, v + l, 1); |
| 14 |
2/4✓ Branch 2 taken 44 times.
✗ Branch 3 not taken.
✓ Branch 5 taken 44 times.
✗ Branch 6 not taken.
|
44 | std::cout << big.get(s, t) << '\n'; |
| 15 |
2/2✓ Branch 0 taken 3318098 times.
✓ Branch 1 taken 44 times.
|
3318142 | flt_ (u32, i, 0, l) { |
| 16 | 3318098 | u32 ret = s; | |
| 17 |
2/2✓ Branch 6 taken 7996865 times.
✓ Branch 7 taken 879643 times.
|
8876508 | for (auto v : big.e[i]) |
| 18 |
5/6✓ Branch 0 taken 3318098 times.
✓ Branch 1 taken 4678767 times.
✓ Branch 2 taken 3318098 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 2438455 times.
✓ Branch 5 taken 879643 times.
|
7996865 | if (v.w == 0 && l <= v.to && v.to < l + r) { |
| 19 | 2438455 | ret = v.to - l; | |
| 20 | 2438455 | break; | |
| 21 | } | ||
| 22 |
6/10✓ Branch 0 taken 2438455 times.
✓ Branch 1 taken 879643 times.
✓ Branch 3 taken 2438455 times.
✗ Branch 4 not taken.
✓ Branch 6 taken 2438455 times.
✗ Branch 7 not taken.
✓ Branch 9 taken 2438455 times.
✗ Branch 10 not taken.
✓ Branch 12 taken 2438455 times.
✗ Branch 13 not taken.
|
3318098 | if (ret != s) std::cout << i << ' ' << ret << '\n'; |
| 23 | } | ||
| 24 | 44 | return 0; | |
| 25 | 44 | } | |
| 26 |