QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#210274#5089. 环覆盖hos_lyric#50 240ms19596kbC++145.9kb2023-10-11 10:27:442024-07-04 02:18:48

Judging History

你现在查看的是最新测评结果

  • [2024-07-04 02:18:48]
  • 评测
  • 测评结果:50
  • 用时:240ms
  • 内存:19596kb
  • [2023-10-11 10:27:44]
  • 提交

answer

#include <cassert>
#include <cmath>
#include <cstdint>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <bitset>
#include <complex>
#include <deque>
#include <functional>
#include <iostream>
#include <limits>
#include <map>
#include <numeric>
#include <queue>
#include <random>
#include <set>
#include <sstream>
#include <string>
#include <unordered_map>
#include <unordered_set>
#include <utility>
#include <vector>

using namespace std;

using Int = long long;

template <class T1, class T2> ostream &operator<<(ostream &os, const pair<T1, T2> &a) { return os << "(" << a.first << ", " << a.second << ")"; };
template <class T> ostream &operator<<(ostream &os, const vector<T> &as) { const int sz = as.size(); os << "["; for (int i = 0; i < sz; ++i) { if (i >= 256) { os << ", ..."; break; } if (i > 0) { os << ", "; } os << as[i]; } return os << "]"; }
template <class T> void pv(T a, T b) { for (T i = a; i != b; ++i) cerr << *i << " "; cerr << endl; }
template <class T> bool chmin(T &t, const T &f) { if (t > f) { t = f; return true; } return false; }
template <class T> bool chmax(T &t, const T &f) { if (t < f) { t = f; return true; } return false; }
#define COLOR(s) ("\x1b[" s "m")

////////////////////////////////////////////////////////////////////////////////
template <unsigned M_> struct ModInt {
  static constexpr unsigned M = M_;
  unsigned x;
  constexpr ModInt() : x(0U) {}
  constexpr ModInt(unsigned x_) : x(x_ % M) {}
  constexpr ModInt(unsigned long long x_) : x(x_ % M) {}
  constexpr ModInt(int x_) : x(((x_ %= static_cast<int>(M)) < 0) ? (x_ + static_cast<int>(M)) : x_) {}
  constexpr ModInt(long long x_) : x(((x_ %= static_cast<long long>(M)) < 0) ? (x_ + static_cast<long long>(M)) : x_) {}
  ModInt &operator+=(const ModInt &a) { x = ((x += a.x) >= M) ? (x - M) : x; return *this; }
  ModInt &operator-=(const ModInt &a) { x = ((x -= a.x) >= M) ? (x + M) : x; return *this; }
  ModInt &operator*=(const ModInt &a) { x = (static_cast<unsigned long long>(x) * a.x) % M; return *this; }
  ModInt &operator/=(const ModInt &a) { return (*this *= a.inv()); }
  ModInt pow(long long e) const {
    if (e < 0) return inv().pow(-e);
    ModInt a = *this, b = 1U; for (; e; e >>= 1) { if (e & 1) b *= a; a *= a; } return b;
  }
  ModInt inv() const {
    unsigned a = M, b = x; int y = 0, z = 1;
    for (; b; ) { const unsigned q = a / b; const unsigned c = a - q * b; a = b; b = c; const int w = y - static_cast<int>(q) * z; y = z; z = w; }
    assert(a == 1U); return ModInt(y);
  }
  ModInt operator+() const { return *this; }
  ModInt operator-() const { ModInt a; a.x = x ? (M - x) : 0U; return a; }
  ModInt operator+(const ModInt &a) const { return (ModInt(*this) += a); }
  ModInt operator-(const ModInt &a) const { return (ModInt(*this) -= a); }
  ModInt operator*(const ModInt &a) const { return (ModInt(*this) *= a); }
  ModInt operator/(const ModInt &a) const { return (ModInt(*this) /= a); }
  template <class T> friend ModInt operator+(T a, const ModInt &b) { return (ModInt(a) += b); }
  template <class T> friend ModInt operator-(T a, const ModInt &b) { return (ModInt(a) -= b); }
  template <class T> friend ModInt operator*(T a, const ModInt &b) { return (ModInt(a) *= b); }
  template <class T> friend ModInt operator/(T a, const ModInt &b) { return (ModInt(a) /= b); }
  explicit operator bool() const { return x; }
  bool operator==(const ModInt &a) const { return (x == a.x); }
  bool operator!=(const ModInt &a) const { return (x != a.x); }
  friend std::ostream &operator<<(std::ostream &os, const ModInt &a) { return os << a.x; }
};
////////////////////////////////////////////////////////////////////////////////

constexpr unsigned MO = 1000000007;
using Mint = ModInt<MO>;

constexpr int LIM_INV = 1010;
Mint inv[LIM_INV], fac[LIM_INV], invFac[LIM_INV];

void prepare() {
  inv[1] = 1;
  for (int i = 2; i < LIM_INV; ++i) {
    inv[i] = -((Mint::M / i) * inv[Mint::M % i]);
  }
  fac[0] = invFac[0] = 1;
  for (int i = 1; i < LIM_INV; ++i) {
    fac[i] = fac[i - 1] * i;
    invFac[i] = invFac[i - 1] * inv[i];
  }
}
Mint binom(Int n, Int k) {
  if (n < 0) {
    if (k >= 0) {
      return ((k & 1) ? -1 : +1) * binom(-n + k - 1, k);
    } else if (n - k >= 0) {
      return (((n - k) & 1) ? -1 : +1) * binom(-k - 1, n - k);
    } else {
      return 0;
    }
  } else {
    if (0 <= k && k <= n) {
      assert(n < LIM_INV);
      return fac[n] * invFac[k] * invFac[n - k];
    } else {
      return 0;
    }
  }
}


int N, M;
vector<int> A, B;

int main() {
  prepare();
  
  for (; ~scanf("%d%d", &N, &M); ) {
    A.resize(M);
    B.resize(M);
    for (int i = 0; i < M; ++i) {
      scanf("%d%d", &A[i], &B[i]);
      --A[i];
      --B[i];
    }
    
    vector<int> adj(N, 0);
    for (int i = 0; i < M; ++i) {
      adj[A[i]] |= 1 << B[i];
      adj[B[i]] |= 1 << A[i];
    }
    vector<int> pop(1 << N, 0);
    for (int u = 0; u < N; ++u) {
      for (int p = 0; p < 1 << u; ++p) {
        pop[p | 1 << u] = pop[p] + 1;
      }
    }
    vector<int> freq(M + 1, 0);
    for (int p = 0; p < 1 << N; ++p) {
      int e = 0;
      for (int u = 0; u < N; ++u) if (p >> u & 1) {
        e += pop[adj[u] & ~p];
      }
      ++freq[e];
    }
    
    vector<Mint> ans(M + 1, 0);
    for (int e = 0; e <= M; ++e) {
      // (1+x)^(M-e) (1-x)^e
      vector<Mint> fs(M + 1, 0);
      for (int a = 0; a <= M - e; ++a) for (int b = 0; b <= e; ++b) {
        fs[a + b] += binom(M - e, a) * binom(e, b) * ((b&1)?-1:+1);
      }
      for (int k = 0; k <= M; ++k) {
        ans[k] += freq[e] * fs[k];
      }
    }
    const Mint invTwo = Mint(1 << N).inv();
    for (int k = 0; k <= M; ++k) {
      ans[k] *= invTwo;
    }
    
    for (int k = 0; k <= M; ++k) {
      if (k) printf(" ");
      printf("%u", ans[k].x);
    }
    puts("");
  }
  return 0;
}

详细

Subtask #1:

score: 5
Accepted

Test #1:

score: 5
Accepted
time: 0ms
memory: 3780kb

input:

10 9
3 5
3 10
4 7
4 8
5 6
5 9
6 9
7 9
9 10

output:

1 0 0 1 1 1 0 0 0 0

result:

ok 10 numbers

Test #2:

score: 0
Accepted
time: 0ms
memory: 4076kb

input:

8 15
1 4
1 5
1 8
2 4
2 6
3 6
4 5
4 6
4 7
5 6
5 7
5 8
6 7
6 8
7 8

output:

1 0 0 10 18 26 46 54 43 30 18 8 2 0 0 0

result:

ok 16 numbers

Test #3:

score: 0
Accepted
time: 29ms
memory: 5376kb

input:

19 19
1 12
1 16
1 18
2 8
2 17
3 11
3 17
4 9
4 19
5 17
7 13
8 17
9 13
9 15
9 17
10 16
10 18
14 17
15 16

output:

1 0 0 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0

result:

ok 20 numbers

Test #4:

score: 0
Accepted
time: 0ms
memory: 3868kb

input:

7 14
1 3
1 4
1 7
2 3
2 5
2 6
2 7
3 4
3 5
3 7
4 7
5 6
5 7
6 7

output:

1 0 0 11 16 18 46 64 47 30 18 5 0 0 0

result:

ok 15 numbers

Test #5:

score: 0
Accepted
time: 0ms
memory: 3816kb

input:

10 9
1 9
2 6
3 5
3 8
3 10
4 6
4 8
5 6
7 10

output:

1 0 0 0 0 1 0 0 0 0

result:

ok 10 numbers

Test #6:

score: 0
Accepted
time: 2ms
memory: 3808kb

input:

15 14
2 9
2 10
3 5
3 10
3 12
3 14
4 6
5 10
5 15
6 9
6 15
7 11
7 13
9 15

output:

1 0 0 2 0 1 3 1 0 0 0 0 0 0 0

result:

ok 15 numbers

Test #7:

score: 0
Accepted
time: 0ms
memory: 4036kb

input:

9 8
1 3
2 4
2 7
3 5
3 9
4 6
7 9
8 9

output:

1 0 0 0 0 0 0 0 0

result:

ok 9 numbers

Test #8:

score: 0
Accepted
time: 29ms
memory: 5268kb

input:

19 18
1 5
1 9
1 15
2 4
2 11
2 15
3 6
3 8
3 17
4 19
5 12
6 13
6 15
8 10
8 15
9 19
12 17
13 16

output:

1 0 0 0 1 0 1 2 0 0 1 2 0 0 0 0 0 0 0

result:

ok 19 numbers

Test #9:

score: 0
Accepted
time: 0ms
memory: 3784kb

input:

7 18
1 2
1 3
1 4
1 6
1 7
2 3
2 5
2 6
2 7
3 4
3 5
3 7
4 5
4 6
4 7
5 6
5 7
6 7

output:

1 0 0 20 51 108 278 528 711 760 660 468 293 156 54 8 0 0 0

result:

ok 19 numbers

Test #10:

score: 0
Accepted
time: 0ms
memory: 3880kb

input:

10 15
1 6
2 4
2 6
2 9
2 10
3 5
3 8
3 9
3 10
4 5
4 8
5 8
5 10
7 9
8 9

output:

1 0 0 4 6 12 16 12 9 4 0 0 0 0 0 0

result:

ok 16 numbers

Subtask #2:

score: 15
Accepted

Dependency #1:

100%
Accepted

Test #11:

score: 15
Accepted
time: 0ms
memory: 3808kb

input:

10 22
1 2
1 3
1 4
1 6
1 8
1 9
2 3
2 4
2 5
2 7
2 8
2 10
3 8
3 10
4 7
4 8
5 7
5 10
6 10
7 9
8 10
9 10

output:

1 0 0 13 33 64 162 367 621 906 1216 1343 1215 988 682 353 146 58 20 4 0 0 0

result:

ok 23 numbers

Test #12:

score: 0
Accepted
time: 1ms
memory: 3812kb

input:

11 38
1 2
1 3
1 4
1 6
1 7
1 8
1 10
2 5
2 8
2 9
2 10
2 11
3 5
3 6
3 7
3 9
3 10
3 11
4 5
4 7
4 11
5 6
5 7
5 9
5 10
5 11
6 7
6 8
6 9
6 10
6 11
7 8
7 9
7 10
8 9
8 11
9 11
10 11

output:

1 0 0 50 210 800 3661 14805 51947 164232 466335 1177265 2639525 5274024 9420013 15077609 21687685 28100640 32827271 34579721 32851761 28140784 21708463 15062239 9394113 5261128 2639589 1183171 472151 166600 51607 13987 3278 656 117 17 1 0 0

result:

ok 39 numbers

Test #13:

score: 0
Accepted
time: 0ms
memory: 3812kb

input:

11 24
1 3
1 4
1 7
1 8
2 6
2 7
2 8
3 4
3 5
3 6
3 8
3 10
4 7
4 9
5 7
5 9
5 11
6 8
6 10
6 11
7 10
7 11
8 9
8 10

output:

1 0 0 9 26 65 147 343 709 1179 1783 2437 2715 2489 1993 1341 702 297 109 30 7 2 0 0 0

result:

ok 25 numbers

Test #14:

score: 0
Accepted
time: 1ms
memory: 3792kb

input:

11 37
1 2
1 4
1 5
1 6
1 7
1 10
2 3
2 4
2 6
2 7
2 8
2 9
2 10
3 5
3 6
3 8
3 10
3 11
4 5
4 6
4 9
4 10
4 11
5 7
5 9
6 7
6 8
6 10
6 11
7 9
7 10
7 11
8 9
8 10
8 11
9 10
10 11

output:

1 0 0 46 189 675 2952 11644 39587 121171 335150 825420 1798517 3475223 5977332 9174036 12597741 15530759 17234898 17229504 15512559 12574521 9163776 5982788 3484905 1805833 829874 336708 120415 37965 10436 2476 518 93 14 2 0 0

result:

ok 38 numbers

Test #15:

score: 0
Accepted
time: 29ms
memory: 5192kb

input:

19 24
1 9
1 10
1 17
1 19
2 3
3 6
4 8
4 10
4 13
4 14
5 7
7 11
8 13
8 17
9 12
9 16
10 19
11 15
11 17
12 16
13 15
14 15
14 17
14 19

output:

1 0 0 3 5 8 14 25 31 36 40 33 27 20 10 3 0 0 0 0 0 0 0 0 0

result:

ok 25 numbers

Test #16:

score: 0
Accepted
time: 0ms
memory: 3736kb

input:

9 30
1 3
1 4
1 5
1 6
1 7
2 3
2 4
2 5
2 6
2 7
2 8
2 9
3 4
3 5
3 6
3 7
3 8
4 5
4 6
4 8
4 9
5 6
5 7
5 8
5 9
6 7
6 8
6 9
7 9
8 9

output:

1 0 0 48 175 568 2365 8050 22348 54852 117479 214858 338872 467840 567602 604996 567273 467832 338270 213748 117607 55912 22753 7882 2298 548 107 18 2 0 0

result:

ok 31 numbers

Test #17:

score: 0
Accepted
time: 11ms
memory: 4140kb

input:

18 24
1 2
1 7
1 13
1 15
1 17
2 3
2 17
3 9
4 6
4 7
5 8
5 15
5 16
6 7
6 14
7 14
8 11
8 16
10 16
11 12
11 18
14 16
14 17
15 16

output:

1 0 0 5 3 4 14 15 16 21 21 16 8 3 1 0 0 0 0 0 0 0 0 0 0

result:

ok 25 numbers

Test #18:

score: 0
Accepted
time: 1ms
memory: 3908kb

input:

13 27
1 2
1 5
1 7
1 10
1 11
1 12
2 3
2 4
2 12
3 4
3 11
3 12
4 5
4 7
4 12
4 13
5 9
5 10
5 11
7 8
7 9
7 11
7 12
8 11
9 13
10 12
11 13

output:

1 0 0 12 37 85 229 607 1265 2371 4146 6130 7924 9384 9660 8504 6605 4404 2430 1122 423 139 47 9 1 1 0 0

result:

ok 28 numbers

Test #19:

score: 0
Accepted
time: 0ms
memory: 4040kb

input:

7 21
1 2
1 3
1 4
1 5
1 6
1 7
2 3
2 4
2 5
2 6
2 7
3 4
3 5
3 6
3 7
4 5
4 6
4 7
5 6
5 7
6 7

output:

1 0 0 35 105 252 805 1935 3255 4515 5481 5481 4515 3255 1935 805 252 105 35 0 0 1

result:

ok 22 numbers

Test #20:

score: 0
Accepted
time: 14ms
memory: 4136kb

input:

18 32
1 4
1 7
1 12
1 16
1 17
1 18
2 3
2 4
2 6
2 8
2 9
2 10
2 17
2 18
3 9
3 15
3 18
4 11
4 12
4 15
4 16
5 17
6 10
6 15
6 17
7 8
9 16
9 18
10 11
11 12
11 16
14 17

output:

1 0 0 10 18 41 122 291 623 1198 2148 3576 5244 6798 8004 8546 8223 7176 5608 3798 2226 1153 498 163 49 18 4 0 0 0 0 0 0

result:

ok 33 numbers

Test #21:

score: 0
Accepted
time: 7ms
memory: 3736kb

input:

17 21
1 5
1 9
1 12
2 3
2 9
2 11
2 12
2 13
2 15
3 13
4 5
4 9
4 11
4 13
5 8
5 15
7 8
7 9
8 10
8 15
12 13

output:

1 0 0 3 6 15 21 32 55 75 87 75 56 45 27 10 2 1 1 0 0 0

result:

ok 22 numbers

Test #22:

score: 0
Accepted
time: 14ms
memory: 4208kb

input:

18 25
1 5
1 6
1 7
1 18
3 4
3 9
3 18
4 9
4 15
5 8
5 10
5 13
5 16
5 17
6 14
6 16
7 8
8 9
9 10
9 14
10 12
10 15
11 12
13 18
16 17

output:

1 0 0 2 5 2 17 21 25 49 57 68 59 68 67 37 22 9 3 0 0 0 0 0 0 0

result:

ok 26 numbers

Test #23:

score: 0
Accepted
time: 0ms
memory: 3868kb

input:

11 31
1 2
1 6
1 7
1 8
1 10
1 11
2 3
2 4
2 7
2 8
3 5
3 6
3 10
3 11
4 5
4 6
4 7
4 8
4 10
5 6
5 8
5 9
5 10
6 10
6 11
7 8
7 10
7 11
8 9
8 11
9 10

output:

1 0 0 25 80 252 931 2947 8105 19882 43247 82492 137162 199904 257302 292622 293531 259948 203238 139705 83764 43252 18951 6991 2155 538 107 18 2 0 0 0

result:

ok 32 numbers

Test #24:

score: 0
Accepted
time: 0ms
memory: 4104kb

input:

11 23
1 3
1 6
1 7
1 8
1 10
1 11
2 4
2 7
2 9
2 10
3 4
3 6
3 8
3 9
3 11
4 5
4 6
4 9
5 8
5 10
6 11
8 9
9 11

output:

1 0 0 10 22 49 126 253 455 770 1080 1267 1327 1146 774 475 272 114 36 11 3 1 0 0

result:

ok 24 numbers

Test #25:

score: 0
Accepted
time: 1ms
memory: 3880kb

input:

12 26
1 2
1 4
1 5
1 6
1 8
1 9
1 11
1 12
2 3
2 6
2 8
2 10
2 12
3 10
3 11
3 12
4 6
4 7
4 9
5 9
5 10
6 7
6 8
6 11
7 10
8 9

output:

1 0 0 13 25 58 172 367 751 1471 2425 3509 4595 5207 4957 3973 2676 1501 699 266 80 19 3 0 0 0 0

result:

ok 27 numbers

Test #26:

score: 0
Accepted
time: 2ms
memory: 3864kb

input:

15 36
1 3
1 6
2 5
2 11
2 14
2 15
3 6
3 7
3 9
3 11
3 12
3 13
4 10
4 11
4 14
5 6
5 9
5 10
5 11
5 12
5 15
6 13
6 14
7 8
7 12
7 13
7 15
8 9
8 13
8 14
10 14
11 13
12 13
12 14
12 15
13 14

output:

1 0 0 16 47 142 453 1358 3739 9187 20868 43655 82997 144331 229041 329775 431023 509806 542672 519878 448465 346692 239031 146924 80469 38975 16428 5939 1835 467 83 7 0 0 0 0 0

result:

ok 37 numbers

Test #27:

score: 0
Accepted
time: 7ms
memory: 3864kb

input:

17 40
1 3
1 5
1 6
1 8
2 3
2 7
2 8
2 9
2 17
3 5
3 7
3 8
3 9
3 11
4 5
4 7
4 10
4 12
5 6
5 8
5 15
6 12
6 13
6 15
6 17
7 15
8 11
8 14
8 16
9 12
9 13
9 14
9 16
10 11
10 16
11 12
11 16
11 17
12 14
12 17

output:

1 0 0 15 35 114 403 1162 3281 8752 21580 49554 105445 207380 375007 621544 945721 1318606 1677800 1947770 2063989 1989450 1738049 1375770 984863 634460 367508 191810 89635 37264 13901 4628 1334 326 56 3 0 0 0 0 0

result:

ok 41 numbers

Test #28:

score: 0
Accepted
time: 28ms
memory: 5396kb

input:

19 22
1 8
1 17
2 7
2 13
3 6
3 8
3 9
3 17
4 8
5 10
5 12
5 17
6 9
7 10
8 11
9 11
9 13
10 16
11 12
11 15
12 17
15 19

output:

1 0 0 2 2 4 6 6 7 7 7 7 5 5 3 1 1 0 0 0 0 0 0

result:

ok 23 numbers

Test #29:

score: 0
Accepted
time: 14ms
memory: 4228kb

input:

18 37
1 3
1 12
2 14
3 4
3 8
3 11
3 14
3 16
4 12
5 6
5 7
5 17
6 7
6 8
6 12
6 14
6 18
7 8
7 9
7 12
7 14
8 15
8 18
9 13
9 18
10 12
10 15
11 17
12 13
12 14
13 14
13 16
13 18
14 17
15 16
16 18
17 18

output:

1 0 0 10 33 82 233 654 1551 3511 7445 14215 25024 40511 60096 82061 102886 118406 124842 120512 106865 86464 63433 42184 24919 12915 6033 2495 862 255 62 13 3 0 0 0 0 0

result:

ok 38 numbers

Test #30:

score: 0
Accepted
time: 4ms
memory: 3804kb

input:

16 22
1 4
1 7
1 13
1 14
2 4
2 11
3 6
3 8
3 9
4 7
4 8
4 14
5 14
6 13
8 11
8 15
10 16
12 14
12 15
13 15
14 16
15 16

output:

1 0 0 2 3 6 7 13 18 15 14 14 15 10 3 3 3 1 0 0 0 0 0

result:

ok 23 numbers

Subtask #3:

score: 0
Time Limit Exceeded

Test #31:

score: 0
Time Limit Exceeded

input:

25 45
1 6
1 12
1 17
2 3
2 4
2 6
3 6
3 8
4 5
4 12
4 16
5 17
6 21
7 14
7 22
7 23
8 15
8 19
8 24
9 11
9 19
9 23
9 25
10 17
10 18
11 16
11 19
11 22
12 19
13 18
14 19
15 19
16 24
17 19
17 22
17 25
18 19
18 21
18 24
19 23
20 22
21 25
22 23
23 25
24 25

output:


result:


Subtask #4:

score: 30
Accepted

Dependency #2:

100%
Accepted

Test #51:

score: 30
Accepted
time: 4ms
memory: 3784kb

input:

15 104
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
1 10
1 11
1 12
1 13
1 14
1 15
2 3
2 4
2 5
2 6
2 7
2 8
2 9
2 10
2 11
2 12
2 13
2 14
2 15
3 4
3 5
3 6
3 7
3 8
3 9
3 10
3 11
3 12
3 13
3 14
3 15
4 5
4 6
4 7
4 8
4 9
4 10
4 11
4 12
4 13
4 14
4 15
5 6
5 7
5 8
5 9
5 10
5 11
5 12
5 13
5 14
5 15
6 7
6 8
6 9
6 10
6 11
6...

output:

1 0 0 442 3939 34320 372801 3661658 32985238 283075936 294329881 441417693 293007257 733544953 819572609 817295250 950834455 866813935 477236103 827061189 801102395 532780660 971544264 254912703 380778104 572112036 447607103 447536960 848347203 364310032 327003537 595530991 844889153 408801661 53864...

result:

ok 105 numbers

Test #52:

score: 0
Accepted
time: 1ms
memory: 3808kb

input:

11 48
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
1 10
1 11
2 3
2 4
2 5
2 6
2 7
2 8
2 9
2 10
2 11
3 4
3 5
3 6
3 8
3 9
3 10
4 5
4 6
4 7
4 8
4 9
4 10
4 11
5 6
5 10
5 11
6 7
6 8
6 9
6 10
7 8
7 9
7 10
7 11
8 10
8 11
9 10
9 11
10 11

output:

1 0 0 109 570 2747 16659 87743 401245 1683808 6425588 22009859 67734240 187875613 470651385 67923054 203081700 146567060 139877519 271028373 340736780 787638539 741967528 233415764 495334841 235657822 745096210 789747251 340760696 269512157 138207585 145638206 202922879 68222601 471116512 188240033 ...

result:

ok 49 numbers

Test #53:

score: 0
Accepted
time: 1ms
memory: 3796kb

input:

11 53
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
1 10
1 11
2 3
2 4
2 5
2 6
2 7
2 8
2 9
2 11
3 4
3 5
3 6
3 7
3 8
3 10
3 11
4 5
4 6
4 7
4 8
4 9
4 10
4 11
5 6
5 7
5 8
5 9
5 10
5 11
6 7
6 8
6 9
6 10
6 11
7 8
7 9
7 10
7 11
8 9
8 10
8 11
9 10
9 11
10 11

output:

1 0 0 147 848 4564 31031 182864 939323 4444237 19156298 74280489 259536298 819829262 346508993 105489604 501641494 558922700 108877499 237906596 592349717 510284806 680501081 816312648 29051039 775037180 645253810 617231424 715537662 984053436 811352758 709885471 547377455 610458255 232561172 951544...

result:

ok 54 numbers

Test #54:

score: 0
Accepted
time: 9ms
memory: 3780kb

input:

17 95
1 4
1 6
1 7
1 8
1 9
1 11
1 12
1 13
1 14
1 16
1 17
2 3
2 4
2 5
2 6
2 7
2 9
2 10
2 11
2 13
2 14
2 15
2 16
3 4
3 5
3 6
3 7
3 8
3 9
3 11
3 13
3 14
3 15
3 17
4 5
4 7
4 9
4 11
4 12
4 13
4 14
4 16
5 6
5 7
5 8
5 9
5 11
5 13
5 15
5 16
6 7
6 8
6 9
6 10
6 12
6 13
6 14
6 15
6 16
6 17
7 9
7 11
7 12
7 13
7 ...

output:

1 0 0 229 1656 11916 105859 856023 6418302 46089154 314385369 26088089 327242703 733343055 315576599 42759328 562785438 342116123 75345100 558756709 184460795 517193712 118826100 562477709 860025263 311622940 542336786 96183060 667385119 900120541 927278035 67836419 880429170 463928262 19863748 6045...

result:

ok 96 numbers

Test #55:

score: 0
Accepted
time: 9ms
memory: 3784kb

input:

17 110
1 2
1 3
1 5
1 6
1 7
1 8
1 9
1 10
1 12
1 13
1 14
1 15
1 16
1 17
2 3
2 4
2 5
2 6
2 7
2 9
2 11
2 12
2 13
2 14
2 15
2 16
2 17
3 4
3 5
3 6
3 7
3 8
3 9
3 10
3 11
3 12
3 13
3 14
3 15
3 16
4 5
4 7
4 8
4 9
4 10
4 11
4 13
4 16
4 17
5 6
5 8
5 9
5 10
5 11
5 12
5 15
5 16
5 17
6 8
6 9
6 10
6 11
6 13
6 14
6...

output:

1 0 0 355 3015 25184 259833 2456018 21536132 181074947 449451304 984064270 739173298 414416844 49135697 737446715 265328740 100259093 387120508 613495292 462874402 910354730 519680365 288199822 282391720 344725880 233126959 151130612 397369021 945045119 99743521 387587905 124292644 306026554 1136628...

result:

ok 111 numbers

Test #56:

score: 0
Accepted
time: 28ms
memory: 5212kb

input:

19 123
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
1 10
1 11
1 14
1 15
1 16
1 18
1 19
2 4
2 5
2 6
2 8
2 10
2 12
2 14
2 16
3 4
3 5
3 6
3 7
3 8
3 9
3 10
3 11
3 12
3 13
3 14
3 16
3 19
4 5
4 6
4 7
4 8
4 9
4 10
4 11
4 13
4 16
4 17
4 18
4 19
5 6
5 8
5 9
5 10
5 11
5 12
5 13
5 14
5 15
5 16
5 17
5 19
6 8
6 9
6 10
6 11
6...

output:

1 0 0 356 3100 26409 277901 2708150 24637214 216127052 817284587 569558531 292380212 285013272 944652984 668087787 580486336 5370387 138569585 396609139 267024892 105431949 832156589 905652277 821386611 477941788 907739252 505215779 873361169 731273863 126431966 261659699 221501167 87238880 95950270...

result:

ok 124 numbers

Test #57:

score: 0
Accepted
time: 2ms
memory: 3780kb

input:

15 47
1 2
1 6
1 7
1 13
1 14
1 15
2 5
2 6
2 8
2 12
2 14
2 15
3 4
3 6
3 7
3 8
3 12
3 14
3 15
4 7
4 8
4 11
4 13
4 15
5 9
5 12
6 7
6 8
6 9
6 13
6 14
7 8
7 10
7 11
8 11
8 12
8 13
8 15
9 13
9 14
9 15
10 11
10 14
10 15
11 13
12 13
12 14

output:

1 0 0 36 149 554 2440 10193 38386 133688 434643 1309992 3637452 9283960 21767984 46851740 92470846 167312848 277685724 423079072 592206862 762195420 902557136 983552102 986192096 909351712 770433242 599141880 427179244 278830904 166335216 90517020 44824953 20132592 8167148 2975132 964261 274506 6733...

result:

ok 48 numbers

Test #58:

score: 0
Accepted
time: 1ms
memory: 4080kb

input:

12 58
1 3
1 6
1 7
1 8
1 9
1 10
1 11
1 12
2 4
2 5
2 6
2 8
2 9
2 10
2 11
2 12
3 4
3 6
3 7
3 8
3 9
3 10
3 11
3 12
4 5
4 6
4 7
4 8
4 9
4 10
4 11
4 12
5 6
5 7
5 9
5 10
5 11
5 12
6 8
6 9
6 10
6 11
6 12
7 8
7 9
7 10
7 11
7 12
8 9
8 10
8 11
8 12
9 10
9 11
9 12
10 11
10 12
11 12

output:

1 0 0 151 885 4921 34571 211997 1149312 5800110 26936566 113880804 438695848 541828605 946212188 507600742 8624296 425572282 711064165 614259593 108826763 307179557 60705428 391181237 434504345 47842733 417259011 597505666 283331656 736128449 167534520 426973466 291722282 39024149 525663637 50245626...

result:

ok 59 numbers

Test #59:

score: 0
Accepted
time: 28ms
memory: 5284kb

input:

19 46
1 6
1 8
1 12
1 17
2 4
2 8
2 9
2 11
2 19
3 5
3 9
3 11
3 13
4 5
4 6
4 8
4 9
4 18
4 19
5 8
5 14
5 19
6 11
6 13
6 18
6 19
7 12
8 9
8 12
8 14
9 11
9 15
10 18
10 19
11 13
11 16
11 18
11 19
12 16
12 17
12 19
13 16
14 18
16 18
17 18
18 19

output:

1 0 0 25 66 217 897 2920 9054 26969 73787 188291 448438 988311 2015427 3801309 6612052 10589033 15601879 21133405 26302858 30062489 31527753 30326293 26746814 21606419 15962097 10771945 6630018 3711285 1883569 863887 356363 131627 43325 12574 3196 706 130 23 4 0 0 0 0 0 0

result:

ok 47 numbers

Test #60:

score: 0
Accepted
time: 36ms
memory: 5184kb

input:

19 165
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
1 10
1 11
1 12
1 13
1 14
1 15
1 16
1 17
1 18
1 19
2 3
2 4
2 5
2 6
2 7
2 8
2 9
2 10
2 11
2 12
2 13
2 14
2 15
2 16
2 17
2 18
2 19
3 4
3 5
3 6
3 7
3 8
3 9
3 10
3 11
3 12
3 13
3 15
3 16
3 17
3 18
3 19
4 5
4 6
4 7
4 8
4 9
4 10
4 11
4 12
4 13
4 14
4 15
4 16
4 17
4 18...

output:

1 0 0 869 10054 116300 1665548 22002410 272568948 266276759 590975839 505433121 931718607 637641747 630197306 503102357 886192153 214442410 462021917 885135130 858519812 765904823 482181368 833822320 931146031 813024359 500687451 371872217 385217126 337681735 890581817 79345549 863682684 802694660 8...

result:

ok 166 numbers

Test #61:

score: 0
Accepted
time: 3ms
memory: 3804kb

input:

16 118
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
1 10
1 11
1 12
1 13
1 14
1 15
1 16
2 3
2 4
2 5
2 6
2 7
2 8
2 9
2 10
2 11
2 12
2 13
2 14
2 15
2 16
3 4
3 5
3 6
3 8
3 9
3 10
3 11
3 12
3 13
3 14
3 15
3 16
4 5
4 6
4 7
4 8
4 9
4 10
4 11
4 12
4 13
4 14
4 15
4 16
5 6
5 7
5 8
5 9
5 10
5 11
5 12
5 13
5 14
5 15
5 16
6 ...

output:

1 0 0 532 5098 48096 564456 6027164 59441272 561142208 29160717 526869910 89823977 271672123 744838240 258573945 914414943 733960178 111036700 152120847 315329135 888999602 288050693 400611365 795188604 503728919 540041171 203079278 670318060 529062595 883090974 155424280 976986672 403186947 8949760...

result:

ok 119 numbers

Test #62:

score: 0
Accepted
time: 1ms
memory: 3892kb

input:

12 50
1 2
1 3
1 4
1 5
1 9
1 10
1 11
1 12
2 4
2 5
2 8
2 9
2 10
2 12
3 4
3 5
3 6
3 7
3 8
3 9
3 10
3 11
4 5
4 6
4 7
4 8
4 10
4 11
4 12
5 6
5 7
5 8
5 9
5 10
5 11
5 12
6 7
6 10
6 11
6 12
7 8
7 9
8 9
8 11
9 10
9 11
9 12
10 11
10 12
11 12

output:

1 0 0 96 476 2254 13481 69784 318757 1352740 5262122 18562920 59439842 172867942 456588561 96768345 401835332 807690260 817901856 852711934 19432959 878767580 332371493 746801508 339516645 717450541 350592895 762071748 342848751 879839932 13138697 844426110 812129845 806088980 403324938 99173625 458...

result:

ok 51 numbers

Test #63:

score: 0
Accepted
time: 4ms
memory: 3808kb

input:

16 64
1 2
1 4
1 5
1 7
1 8
1 10
1 11
2 4
2 5
2 8
2 9
2 10
2 11
2 13
2 14
3 4
3 6
3 7
3 11
3 13
3 14
3 15
3 16
4 7
4 8
4 11
4 15
4 16
5 6
5 7
5 11
5 12
5 13
5 14
5 16
6 7
6 8
6 9
6 10
6 12
6 13
6 14
6 15
6 16
7 8
7 9
7 11
7 12
7 14
7 15
8 10
8 11
8 14
9 10
9 11
9 12
9 13
10 12
10 13
10 15
12 13
12 15
...

output:

1 0 0 84 390 1938 12290 67439 341509 1655311 7536225 32064649 127500700 472812664 632267153 241238767 646621452 425063089 92639242 318373511 900000596 965068668 239861185 149714042 232248387 185697272 595357461 554914837 674296784 819915816 965094125 394744367 30798848 776864470 845388044 874631865 ...

result:

ok 65 numbers

Test #64:

score: 0
Accepted
time: 2ms
memory: 3820kb

input:

13 78
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
1 10
1 11
1 12
1 13
2 3
2 4
2 5
2 6
2 7
2 8
2 9
2 10
2 11
2 12
2 13
3 4
3 5
3 6
3 7
3 8
3 9
3 10
3 11
3 12
3 13
4 5
4 6
4 7
4 8
4 9
4 10
4 11
4 12
4 13
5 6
5 7
5 8
5 9
5 10
5 11
5 12
5 13
6 7
6 8
6 9
6 10
6 11
6 12
6 13
7 8
7 9
7 10
7 11
7 12
7 13
8 9
8 10
8 11
...

output:

1 0 0 286 2145 15444 139425 1119690 8091369 55000660 348240321 35495552 982387346 703789158 508852268 245623548 861681658 789672282 919985699 481818958 78345812 126679866 730240962 990550317 729739768 321231977 568449449 626094595 354581946 910929169 813369076 238868013 442353493 841961345 49618718 ...

result:

ok 79 numbers

Test #65:

score: 0
Accepted
time: 1ms
memory: 4084kb

input:

10 41
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
1 10
2 3
2 4
2 5
2 7
2 8
2 10
3 4
3 5
3 6
3 7
3 8
3 9
3 10
4 5
4 6
4 7
4 8
4 10
5 6
5 7
5 8
5 9
5 10
6 7
6 8
6 10
7 8
7 9
7 10
8 9
8 10
9 10

output:

1 0 0 92 441 1902 10420 48580 191384 681732 2179316 6152116 15392616 34392252 68871684 123966484 201349538 296077492 394806020 477837596 525472738 525490648 477878300 394868428 296155504 201376076 123905116 68789628 34357536 15401892 6177324 2201180 689749 188668 44716 8792 1245 90 0 0 0 0

result:

ok 42 numbers

Test #66:

score: 0
Accepted
time: 29ms
memory: 5248kb

input:

19 68
1 2
1 6
1 7
1 9
1 13
1 18
1 19
2 3
2 5
2 7
2 13
2 16
2 17
2 18
3 6
3 12
3 13
3 15
3 16
3 19
4 8
4 9
4 10
4 12
4 15
5 7
5 9
5 10
5 12
5 14
5 15
6 8
6 12
6 15
7 8
7 9
7 11
7 14
7 16
8 11
8 12
8 13
8 15
8 17
9 11
9 15
9 16
9 17
10 11
10 13
10 14
10 15
10 16
11 14
11 16
12 14
12 18
12 19
13 18
14 ...

output:

1 0 0 45 233 1085 5526 28640 139192 635650 2783193 11609014 45844744 171217430 603597469 4492794 261236999 371652378 587221088 640570357 321342931 83542425 656812192 897692440 960335080 633315390 244886039 160159774 811004280 260079571 503436768 182717096 455548472 469255874 676228776 933441841 9067...

result:

ok 69 numbers

Test #67:

score: 0
Accepted
time: 6ms
memory: 3780kb

input:

16 106
1 3
1 4
1 5
1 6
1 7
1 8
1 9
1 10
1 11
1 12
1 14
1 15
1 16
2 3
2 4
2 5
2 6
2 7
2 8
2 10
2 11
2 12
2 13
2 14
2 15
2 16
3 4
3 5
3 6
3 7
3 8
3 9
3 10
3 11
3 12
3 13
3 14
3 15
3 16
4 5
4 6
4 7
4 8
4 9
4 11
4 12
4 13
4 15
4 16
5 6
5 7
5 8
5 9
5 10
5 11
5 12
5 13
5 14
5 15
5 16
6 7
6 8
6 9
6 11
6 12...

output:

1 0 0 387 3326 28085 294791 2811467 24726620 207891233 657255378 448539547 58719624 125270211 68339456 931118040 997960011 519377340 227196840 268384861 307562586 689877475 301251412 832830017 966081263 834678169 179034420 724572158 530405354 452455545 544800322 912157900 441456470 384863172 6632482...

result:

ok 107 numbers

Test #68:

score: 0
Accepted
time: 11ms
memory: 4212kb

input:

18 64
1 2
1 4
1 5
1 11
1 14
1 16
1 18
2 6
2 9
2 14
2 16
2 18
3 4
3 8
3 11
3 17
3 18
4 5
4 6
4 7
4 8
4 11
4 12
4 13
4 18
5 7
5 8
5 11
5 13
5 15
5 18
6 7
6 9
6 12
6 14
6 15
6 17
7 11
7 13
7 14
7 18
8 11
8 12
8 14
8 15
9 10
9 11
9 14
9 18
10 11
10 12
10 13
10 15
10 17
11 12
11 16
12 14
12 15
12 18
13 1...

output:

1 0 0 55 255 1142 6276 31875 148819 662681 2799478 11135239 41677536 146587320 483610746 494881279 325395779 706956629 627655603 102871149 102768114 8332047 827489903 159054005 367702947 627556786 88243324 866252685 448814953 173173497 423140862 350611366 495684474 209696434 893454347 798906620 5949...

result:

ok 65 numbers

Test #69:

score: 0
Accepted
time: 7ms
memory: 4064kb

input:

17 59
1 2
1 3
1 5
1 6
1 7
1 8
1 10
1 12
1 14
1 16
1 17
2 4
2 7
2 8
2 9
2 12
2 14
3 4
3 6
3 8
3 10
3 11
3 14
3 15
3 17
4 10
4 11
4 13
4 14
4 17
5 8
5 11
5 13
5 15
5 16
6 7
6 11
6 12
6 13
6 14
7 9
7 13
7 14
7 17
8 17
9 11
9 14
9 15
9 17
10 14
11 12
11 17
12 13
12 15
13 15
14 15
14 17
15 16
16 17

output:

1 0 0 51 229 1035 5272 24986 111591 468158 1848449 6872670 23942637 77983218 237252591 673260194 780187495 383670898 50476389 453779862 645941598 968751579 278875637 294913943 234947167 435401505 59276406 955076102 57233471 625202635 593934837 960193952 794270799 865164751 269719211 156686342 321068...

result:

ok 60 numbers

Test #70:

score: 0
Accepted
time: 2ms
memory: 3848kb

input:

14 79
1 2
1 3
1 4
1 5
1 7
1 8
1 9
1 10
1 11
1 12
1 13
2 3
2 4
2 5
2 6
2 8
2 9
2 10
2 11
2 12
2 13
2 14
3 4
3 5
3 6
3 7
3 8
3 9
3 10
3 11
3 12
3 13
3 14
4 5
4 6
4 7
4 9
4 10
4 11
4 12
4 13
4 14
5 6
5 7
5 8
5 9
5 10
5 11
5 12
5 13
6 7
6 8
6 9
6 12
6 13
6 14
7 8
7 9
7 10
7 12
7 13
7 14
8 9
8 11
8 12
8 ...

output:

1 0 0 235 1668 11505 98967 762400 5337286 35341480 219228572 264132287 772232630 684733185 429258043 330803761 153812272 731996648 600855005 511947008 317873201 986392280 916942216 32823818 307430883 243654527 348517247 568373196 798915517 486892676 897955714 697793915 530976524 56572294 261315045 9...

result:

ok 80 numbers

Subtask #5:

score: 0
Time Limit Exceeded

Dependency #4:

100%
Accepted

Test #71:

score: 35
Accepted
time: 240ms
memory: 19596kb

input:

22 140
1 2
1 3
1 7
1 9
1 11
1 14
1 16
1 17
1 19
1 20
1 21
1 22
2 3
2 4
2 5
2 6
2 9
2 10
2 12
2 13
2 14
2 16
2 17
2 19
2 20
2 21
3 4
3 5
3 7
3 10
3 11
3 12
3 13
3 14
3 15
3 17
3 19
3 20
4 6
4 8
4 11
4 14
4 15
4 16
4 17
4 18
4 19
4 21
4 22
5 8
5 9
5 10
5 11
5 12
5 13
5 17
5 18
5 20
5 21
5 22
6 8
6 10
...

output:

1 0 0 335 2863 24609 259936 2555382 23739356 214218237 866654424 644248127 14323561 687297272 747591530 210535395 55791321 407881455 916253643 746579852 372053120 735371553 74022656 793010510 231755889 346527767 620887138 420247609 197970936 763107535 207212385 242393553 847932309 558259565 29848345...

result:

ok 141 numbers

Test #72:

score: -35
Time Limit Exceeded

input:

24 205
1 2
1 3
1 4
1 6
1 9
1 10
1 11
1 12
1 13
1 14
1 19
1 21
1 22
1 23
2 3
2 4
2 5
2 6
2 7
2 10
2 12
2 13
2 14
2 15
2 17
2 19
2 20
2 22
2 23
2 24
3 4
3 5
3 6
3 7
3 9
3 10
3 11
3 12
3 13
3 15
3 16
3 17
3 18
3 20
3 21
3 22
3 23
4 6
4 8
4 9
4 10
4 13
4 14
4 16
4 18
4 19
4 20
4 22
4 23
4 24
5 6
5 8
5 9...

output:

1 0 0 810 9436 111415 1614647 21909912 282938060 568188695 686848205 420941904 734318373 29937959 467750645 134246289 555505884 408145122 162822060 14086303 859143504 662235981 893640560 553728798 413077574 764055719 813843255 968683764 139283059 118496774 31446805 642857915 174025017 146652666 4261...

result: