GCC Code Coverage Report


Directory: ./
Coverage: low: ≥ 0% medium: ≥ 75.0% high: ≥ 90.0%
Coverage Exec / Excl / Total
Lines: 100.0% 91 / 0 / 91
Functions: 100.0% 10 / 0 / 10
Branches: 88.1% 74 / 0 / 84

src/nt/lsieve/impl2/lib.hpp
Line Branch Exec Source
1 #pragma once
2
3 #include "../../../util/alias/others/lib.hpp"
4
5 namespace tifa_libs {
6
7 class lsieve2 {
8 vecptu pr;
9 vecu fr;
10
11 public:
12 718 CEXPE lsieve2(u32 n) NE : fr(n + 1) {
13
2/2
✓ Branch 0 taken 326524847 times.
✓ Branch 1 taken 359 times.
326525206 for (u32 i = 2, x = n / 2, p1, p2, e; i <= n; x = n / (++i)) {
14
2/2
✓ Branch 1 taken 22804063 times.
✓ Branch 2 taken 303720784 times.
326524847 if (!fr[i]) {
15
2/2
✓ Branch 1 taken 22850914 times.
✓ Branch 2 taken 22804063 times.
45654977 for (p1 = 1, p2 = i, e = 0; p1 <= x; p1 = p2, p2 *= i, ++e) fr[p2] = 1;
16 22804063 pr.emplace_back(i, e);
17 }
18
1/2
✓ Branch 7 taken 522463125 times.
✗ Branch 8 not taken.
522463125 for (auto [p, _] : pr)
19
2/2
✓ Branch 0 taken 218742341 times.
✓ Branch 1 taken 303720784 times.
522463125 if (p > x) break;
20 // p <= x == n/i ==> p*i <= n
21
2/2
✓ Branch 0 taken 195938278 times.
✓ Branch 1 taken 107782506 times.
303720784 else if (i % p) fr[p * i] = i; // NOLINT(clang-analyzer-core.DivideZero)
22 else {
23 107782506 fr[p * i] = fr[i];
24 107782506 break;
25 }
26 }
27 359 }
28
29 // @param F: T(u32, u32)
30 // @param %fpi(p, i) = $f(p^i)$
31 // @return v[i] = f(i), for i in [0, n]
32 template <class T, class F>
33 requires requires(F f, u32 p, u32 i) {
34 { f(p, i) } -> std::same_as<T>;
35 }
36 392 CEXP vec<T> run(F fpi, T init = T{1}) CNE {
37 392 vec<T> v(fr.size());
38
9/18
std::vector<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, std::allocator<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > > > tifa_libs::lsieve2::run<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >) const:
✗ Branch 1 not taken.
✓ Branch 2 taken 20 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >) const:
✗ Branch 1 not taken.
✓ Branch 2 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >) const:
✗ Branch 1 not taken.
✓ Branch 2 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >) const:
✗ Branch 1 not taken.
✓ Branch 2 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >) const:
✗ Branch 1 not taken.
✓ Branch 2 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >) const:
✗ Branch 1 not taken.
✓ Branch 2 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >) const:
✗ Branch 1 not taken.
✓ Branch 2 taken 35 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >) const:
✗ Branch 1 not taken.
✓ Branch 2 taken 48 times.
std::vector<unsigned long, std::allocator<unsigned long> > tifa_libs::lsieve2::run<unsigned long, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, unsigned long) const:
✗ Branch 1 not taken.
✓ Branch 2 taken 5 times.
392 if (fr.size() < 2) return v;
39 388 v[1] = init;
40
18/18
std::vector<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, std::allocator<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > > > tifa_libs::lsieve2::run<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >) const:
✓ Branch 1 taken 6250874 times.
✓ Branch 2 taken 20 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >) const:
✓ Branch 1 taken 302368 times.
✓ Branch 2 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >) const:
✓ Branch 1 taken 302368 times.
✓ Branch 2 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >) const:
✓ Branch 1 taken 302368 times.
✓ Branch 2 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >) const:
✓ Branch 1 taken 302368 times.
✓ Branch 2 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >) const:
✓ Branch 1 taken 302368 times.
✓ Branch 2 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >) const:
✓ Branch 1 taken 13337426 times.
✓ Branch 2 taken 35 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >) const:
✓ Branch 1 taken 302368 times.
✓ Branch 2 taken 48 times.
std::vector<unsigned long, std::allocator<unsigned long> > tifa_libs::lsieve2::run<unsigned long, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, unsigned long) const:
✓ Branch 1 taken 1397723 times.
✓ Branch 2 taken 5 times.
22815947 flt_ (u32, i, 0, (u32)pr.size())
41
18/18
std::vector<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, std::allocator<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > > > tifa_libs::lsieve2::run<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >) const:
✓ Branch 5 taken 6257470 times.
✓ Branch 6 taken 6250874 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >) const:
✓ Branch 4 taken 306303 times.
✓ Branch 5 taken 302368 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >) const:
✓ Branch 4 taken 306303 times.
✓ Branch 5 taken 302368 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >) const:
✓ Branch 4 taken 306303 times.
✓ Branch 5 taken 302368 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >) const:
✓ Branch 4 taken 306303 times.
✓ Branch 5 taken 302368 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >) const:
✓ Branch 4 taken 306303 times.
✓ Branch 5 taken 302368 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >) const:
✓ Branch 4 taken 13352434 times.
✓ Branch 5 taken 13337426 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >) const:
✓ Branch 4 taken 306303 times.
✓ Branch 5 taken 302368 times.
std::vector<unsigned long, std::allocator<unsigned long> > tifa_libs::lsieve2::run<unsigned long, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, unsigned long) const:
✓ Branch 4 taken 1399083 times.
✓ Branch 5 taken 1397723 times.
45678800 for (u32 p = pr[i].first, e = pr[i].second, pe = p, ex = 1; ex <= e; ++ex, pe *= p) v[pe] = fpi(p, ex);
42
18/18
std::vector<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, std::allocator<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > > > tifa_libs::lsieve2::run<std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, std::pair<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > >) const:
✓ Branch 8 taken 92568043 times.
✓ Branch 9 taken 20 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_bd_tag<13l> >) const:
✓ Branch 7 taken 3084541 times.
✓ Branch 8 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_bs_tag<998244353ul> >) const:
✓ Branch 7 taken 3084541 times.
✓ Branch 8 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_md64_tag<13l> >) const:
✓ Branch 7 taken 3084541 times.
✓ Branch 8 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_md_tag<13l> >) const:
✓ Branch 7 taken 3084541 times.
✓ Branch 8 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms64_tag<998244353ul> >) const:
✓ Branch 7 taken 3084541 times.
✓ Branch 8 taken 48 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<1000000007ul> >) const:
✓ Branch 7 taken 194560036 times.
✓ Branch 8 taken 35 times.
std::vector<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, std::allocator<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> > > > tifa_libs::lsieve2::run<tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, tifa_libs::mint_impl_::mint<tifa_libs::mint_ms_tag<998244353ul> >) const:
✓ Branch 7 taken 3084541 times.
✓ Branch 8 taken 48 times.
std::vector<unsigned long, std::allocator<unsigned long> > tifa_libs::lsieve2::run<unsigned long, main::{lambda(unsigned int, unsigned int)#1}>(main::{lambda(unsigned int, unsigned int)#1}, unsigned long) const:
✓ Branch 6 taken 20861421 times.
✓ Branch 7 taken 5 times.
326609538 flt_ (u32, i, 2, (u32)fr.size()) v[i] = v[i / fr[i]] * v[fr[i]];
43 388 return v;
44 }
45 };
46
47 } // namespace tifa_libs
48