QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#613438#9444. Again Permutation Problemucup-team008#AC ✓109ms4060kbC++1710.5kb2024-10-05 14:01:392024-10-05 14:04:42

Judging History

This is the latest submission verdict.

  • [2024-10-05 14:04:42]
  • Judged
  • Verdict: AC
  • Time: 109ms
  • Memory: 4060kb
  • [2024-10-05 14:01:39]
  • Submitted

answer

#include <algorithm>
#include <array>
#include <bitset>
#include <cassert>
#include <chrono>
#include <cstring>
#include <functional>
#include <iomanip>
#include <iostream>
#include <map>
#include <numeric>
#include <queue>
#include <random>
#include <set>
#include <stack>
#include <vector>

using namespace std;

// BEGIN NO SAD
#define rep(i, a, b) for(int i = a; i < (b); ++i)
#define trav(a, x) for(auto& a : x)
#define all(x) x.begin(), x.end()
#define sz(x) (int)(x).size()
#define mp make_pair
#define pb push_back
#define eb emplace_back
#define lb lower_bound
#define ub upper_bound
typedef vector<int> vi;
#define f first
#define s second
#define derr if(1) cerr

void __print(int x) {cerr << x;}
void __print(long x) {cerr << x;}
void __print(long long x) {cerr << x;}
void __print(unsigned x) {cerr << x;}
void __print(unsigned long x) {cerr << x;}
void __print(unsigned long long x) {cerr << x;}
void __print(float x) {cerr << x;}
void __print(double x) {cerr << x;}
void __print(long double x) {cerr << x;}
void __print(char x) {cerr << '\'' << x << '\'';}
void __print(const char *x) {cerr << '\"' << x << '\"';}
void __print(const string &x) {cerr << '\"' << x << '\"';}
void __print(bool x) {cerr << (x ? "true" : "false");}
 
template<typename T, typename V>
void __print(const pair<T, V> &x) {cerr << '{'; __print(x.first); cerr << ", "; __print(x.second); cerr << '}';}
template<typename T>
void __print(const T &x) {int f = 0; cerr << '{'; for (auto &i: x) cerr << (f++ ? ", " : ""), __print(i); cerr << "}";}
void _print() {cerr << "]\n";}
template <typename T, typename... V>
void _print(T t, V... v) {__print(t); if (sizeof...(v)) cerr << ", "; _print(v...);}
#define debug(x...) cerr << "\e[91m"<<__func__<<":"<<__LINE__<<" [" << #x << "] = ["; _print(x); cerr << "\e[39m" << flush;
// END NO SAD

template<class Fun>
class y_combinator_result {
  Fun fun_;
public:
  template<class T>
  explicit y_combinator_result(T &&fun): fun_(std::forward<T>(fun)) {}

  template<class ...Args>
  decltype(auto) operator()(Args &&...args) {
    return fun_(std::ref(*this), std::forward<Args>(args)...);
  }
};

template<class Fun>
decltype(auto) y_combinator(Fun &&fun) {
  return y_combinator_result<std::decay_t<Fun>>(std::forward<Fun>(fun));
}

template<class T>
bool updmin(T& a, T b) {
  if(b < a) {
    a = b;
    return true;
  }
  return false;
}
template<class T>
bool updmax(T& a, T b) {
  if(b > a) {
    a = b;
    return true;
  }
  return false;
}
typedef int64_t ll;

struct barrett_reduction {
    unsigned mod;
    uint64_t div;
 
    barrett_reduction(unsigned m) : mod(m), div(-1LLU / m) {}
 
    unsigned operator()(uint64_t a) const {
#ifdef __SIZEOF_INT128__
        uint64_t q = uint64_t(__uint128_t(div) * a >> 64);
        uint64_t r = a - q * mod;
        return unsigned(r < mod ? r : r - mod);
#endif
        return unsigned(a % mod);
    }
};
 
template<const int &MOD, const barrett_reduction &barrett>
struct _b_int {
    int val;
 
    _b_int(int64_t v = 0) {
        if (v < 0) v = v % MOD + MOD;
        if (v >= MOD) v %= MOD;
        val = int(v);
    }
 
    _b_int(uint64_t v) {
        if (v >= uint64_t(MOD)) v %= MOD;
        val = int(v);
    }
 
    _b_int(int v) : _b_int(int64_t(v)) {}
    _b_int(unsigned v) : _b_int(uint64_t(v)) {}
 
    static int inv_mod(int a, int m = MOD) {
        // https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm#Example
        int g = m, r = a, x = 0, y = 1;
 
        while (r != 0) {
            int q = g / r;
            g %= r; swap(g, r);
            x -= q * y; swap(x, y);
        }
 
        return x < 0 ? x + m : x;
    }
 
    explicit operator int() const { return val; }
    explicit operator unsigned() const { return val; }
    explicit operator int64_t() const { return val; }
    explicit operator uint64_t() const { return val; }
    explicit operator double() const { return val; }
    explicit operator long double() const { return val; }
 
    _b_int& operator+=(const _b_int &other) {
        val -= MOD - other.val;
        if (val < 0) val += MOD;
        return *this;
    }
 
    _b_int& operator-=(const _b_int &other) {
        val -= other.val;
        if (val < 0) val += MOD;
        return *this;
    }
 
    static unsigned fast_mod(uint64_t x) {
#if !defined(_WIN32) || defined(_WIN64)
        return barrett(x);
#endif
        // Optimized mod for Codeforces 32-bit machines.
        // x must be less than 2^32 * MOD for this to work, so that x / MOD fits in an unsigned 32-bit int.
        unsigned x_high = unsigned(x >> 32), x_low = unsigned(x);
        unsigned quot, rem;
        asm("divl %4\n"
            : "=a" (quot), "=d" (rem)
            : "d" (x_high), "a" (x_low), "r" (MOD));
        return rem;
    }
 
    _b_int& operator*=(const _b_int &other) {
        val = fast_mod(uint64_t(val) * other.val);
        return *this;
    }
 
    _b_int& operator/=(const _b_int &other) {
        return *this *= other.inv();
    }
 
    friend _b_int operator+(const _b_int &a, const _b_int &b) { return _b_int(a) += b; }
    friend _b_int operator-(const _b_int &a, const _b_int &b) { return _b_int(a) -= b; }
    friend _b_int operator*(const _b_int &a, const _b_int &b) { return _b_int(a) *= b; }
    friend _b_int operator/(const _b_int &a, const _b_int &b) { return _b_int(a) /= b; }
 
    _b_int& operator++() {
        val = val == MOD - 1 ? 0 : val + 1;
        return *this;
    }
 
    _b_int& operator--() {
        val = val == 0 ? MOD - 1 : val - 1;
        return *this;
    }
 
    _b_int operator++(int) { _b_int before = *this; ++*this; return before; }
    _b_int operator--(int) { _b_int before = *this; --*this; return before; }
 
    _b_int operator-() const {
        return val == 0 ? 0 : MOD - val;
    }
 
    friend bool operator==(const _b_int &a, const _b_int &b) { return a.val == b.val; }
    friend bool operator!=(const _b_int &a, const _b_int &b) { return a.val != b.val; }
    friend bool operator<(const _b_int &a, const _b_int &b) { return a.val < b.val; }
    friend bool operator>(const _b_int &a, const _b_int &b) { return a.val > b.val; }
    friend bool operator<=(const _b_int &a, const _b_int &b) { return a.val <= b.val; }
    friend bool operator>=(const _b_int &a, const _b_int &b) { return a.val >= b.val; }
 
    _b_int inv() const {
        return inv_mod(val);
    }
 
    _b_int pow(int64_t p) const {
        if (p < 0)
            return inv().pow(-p);
 
        _b_int a = *this, result = 1;
 
        while (p > 0) {
            if (p & 1)
                result *= a;
 
            p >>= 1;
 
            if (p > 0)
                a *= a;
        }
 
        return result;
    }
 
    friend ostream& operator<<(ostream &os, const _b_int &m) {
        return os << m.val;
    }
 
    friend istream& operator>>(istream &is, _b_int &m) {
        int64_t x;
        is >> x;
        m = x;
        return is;
    }
};
 
int MOD = 998244353;
barrett_reduction barrett(MOD);
using mnum = _b_int<MOD, barrett>;

void identityPerm(vector<int>& v, int n) {
  v.resize(n);
  iota(all(v), 0);
}
void compose(vector<int>& ret, const vector<int>& lhs, const vector<int>& rhs) {
  ret.resize(sz(lhs));
  for(int i = 0; i < sz(ret); i++) ret[i] = rhs[lhs[i]];
}
void invertPerm(vector<int>& ret, const vector<int>& v) {
  ret.resize(sz(v));
  for(int i = 0; i < sz(ret); i++) ret[v[i]] = i;
}

void genPerm(int n, vector<vector<vector<int>>>& ret, vector<vector<int>>& src) {
  ret.resize(n);
  vector<vector<int>> currperms = src;
  if(sz(currperms) == 0) {
    currperms.resize(1);
    identityPerm(currperms[0], n);
  }
  for(int i = n-1; i >= 0; i--) {
    vector<vector<int>> curr;
    vector<vector<int>> dp(n);
    vector<int> st;
    for(const auto& cand: currperms) {
      if(sz(dp[cand[i]]) == 0) {
        dp[cand[i]] = cand;
        st.pb(cand[i]);
      }
      while(sz(st)) {
        int ci = st.back(); st.pop_back();
        for(const auto& ncand: currperms) {
          int ni = ncand[ci];
          if(sz(dp[ni]) == 0) {
            compose(dp[ni], dp[ci], ncand);
            st.pb(ni);
          }
        }
      }
    }
    vector<vector<int>> perms;
    for(int j = 0; j < n; j++) {
      if(sz(dp[j]) > 0) perms.pb(dp[j]);
    }
    vector<vector<int>> nextperms;
    vector<vector<vector<int>>> cache(n);
    for(auto& x: cache) {
      x.resize(n);
    }
    for(int j = 0; j < n; j++) {
      if(sz(dp[j]) == 0) continue;
      for(const auto& p: currperms) {
        vector<int> cand;
        vector<int> rhs;
        invertPerm(rhs, dp[p[j]]);
        compose(cand, dp[j], p);
        vector<int> ncand;
        compose(ncand, cand, rhs);
        for(int k = i-1; k >= 0; k--) {
          if(sz(cache[k][ncand[k]]) > 0) {
            vector<int> ncandinv;
            invertPerm(ncandinv, ncand);
            compose(ncand, cache[k][ncand[k]], ncandinv);
          }
          else {
            cache[k][ncand[k]] = ncand;
            nextperms.pb(ncand);
            break;
          }
        }
      }
    }
    ret[i] = perms;
    swap(currperms, nextperms);
  }
}

void solve() {
  int c, r;
  cin >> c >> r;
  vector<vector<int>> g(r);
  for(auto& x: g) {
    x.resize(c);
    for(auto& y: x) {
      cin >> y; y--;
    }
  }
  vector<vector<vector<int>>> allv;
  vector<vector<int>> perms;
  for(const auto& p: g) {
    vector<int> cand(c);
    for(int i = 0; i < c; i++) cand[i] = p[i];
    perms.pb(cand);
  }
  genPerm(c, allv, perms);
  vector<vector<mnum>> dp(c);
  for(int i = 0; i < c; i++) {
    dp[i].resize(c);
    for(int j = i+1; j < c; j++) dp[i][j] = 1;
  }
  for(const auto& curr: allv) {
    vector<vector<mnum>> ndp(c);
    for(auto& x: ndp) x.resize(c);
    for(const auto& p: curr) {
      for(int a = 0; a < c; a++) for(int b = 0; b < c; b++) ndp[p[a]][p[b]] += dp[a][b];
    }
    swap(dp, ndp);
  }
  mnum ret = 0;
  for(int i = 0; i < c; i++) for(int j = 0; j < i; j++) ret += dp[i][j];
  cout << ret << "\n";
}

// what would chika do
// are there edge cases (N=1?)
// are array sizes proper (scaled by proper constant, for example 2* for koosaga tree)
// integer overflow?
// DS reset properly between test cases
// are you doing geometry in floating points
// are you not using modint when you should

int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  solve();
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3620kb

input:

3 2
1 2 3
2 3 1

output:

4

result:

ok 1 number(s): "4"

Test #2:

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

input:

5 2
3 4 5 1 2
1 5 4 3 2

output:

50

result:

ok 1 number(s): "50"

Test #3:

score: 0
Accepted
time: 103ms
memory: 3872kb

input:

30 12
1 2 9 4 5 6 7 8 3 10 11 12 19 14 15 25 17 18 20 26 21 22 23 24 16 29 27 28 13 30
9 2 27 4 5 10 7 8 1 25 11 12 24 14 15 16 17 18 19 20 21 22 23 28 6 26 3 13 29 30
1 5 3 29 2 6 7 8 9 10 11 12 13 16 15 18 17 14 19 20 21 22 28 27 25 26 24 23 4 30
7 2 3 25 5 6 1 28 21 15 11 12 13 14 10 17 16 18 19 ...

output:

701414999

result:

ok 1 number(s): "701414999"

Test #4:

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

input:

1 1
1

output:

0

result:

ok 1 number(s): "0"

Test #5:

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

input:

2 1
2 1

output:

1

result:

ok 1 number(s): "1"

Test #6:

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

input:

5 1
4 2 3 1 5

output:

5

result:

ok 1 number(s): "5"

Test #7:

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

input:

6 3
4 2 3 6 5 1
1 4 3 2 6 5
1 2 4 3 5 6

output:

5400

result:

ok 1 number(s): "5400"

Test #8:

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

input:

6 1
1 5 3 4 2 6

output:

5

result:

ok 1 number(s): "5"

Test #9:

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

input:

5 3
1 4 3 2 5
1 2 4 5 3
5 2 3 4 1

output:

600

result:

ok 1 number(s): "600"

Test #10:

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

input:

6 2
2 1 3 4 5 6
1 2 3 4 5 6

output:

1

result:

ok 1 number(s): "1"

Test #11:

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

input:

6 4
1 6 3 4 5 2
2 1 4 3 5 6
2 6 5 4 3 1
2 1 6 3 5 4

output:

5400

result:

ok 1 number(s): "5400"

Test #12:

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

input:

5 2
3 2 1 4 5
1 5 3 2 4

output:

21

result:

ok 1 number(s): "21"

Test #13:

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

input:

3 3
1 3 2
3 1 2
1 3 2

output:

9

result:

ok 1 number(s): "9"

Test #14:

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

input:

4 2
3 1 4 2
4 2 1 3

output:

72

result:

ok 1 number(s): "72"

Test #15:

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

input:

3 1
2 3 1

output:

4

result:

ok 1 number(s): "4"

Test #16:

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

input:

5 1
2 4 3 5 1

output:

18

result:

ok 1 number(s): "18"

Test #17:

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

input:

5 4
3 5 2 4 1
1 2 5 4 3
5 4 3 2 1
4 2 3 1 5

output:

600

result:

ok 1 number(s): "600"

Test #18:

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

input:

5 1
1 5 3 4 2

output:

5

result:

ok 1 number(s): "5"

Test #19:

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

input:

5 1
5 2 3 4 1

output:

7

result:

ok 1 number(s): "7"

Test #20:

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

input:

4 2
4 3 1 2
3 4 2 1

output:

12

result:

ok 1 number(s): "12"

Test #21:

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

input:

6 3
2 3 1 4 5 6
1 2 3 4 6 5
1 4 3 2 5 6

output:

168

result:

ok 1 number(s): "168"

Test #22:

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

input:

6 2
3 4 1 2 5 6
2 3 1 4 5 6

output:

36

result:

ok 1 number(s): "36"

Test #23:

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

input:

4 2
1 3 4 2
4 2 3 1

output:

72

result:

ok 1 number(s): "72"

Test #24:

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

input:

3 2
2 1 3
2 3 1

output:

9

result:

ok 1 number(s): "9"

Test #25:

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

input:

6 2
1 5 4 6 2 3
2 6 4 3 5 1

output:

5400

result:

ok 1 number(s): "5400"

Test #26:

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

input:

6 4
1 2 3 6 5 4
1 5 3 2 6 4
1 2 4 3 5 6
1 4 2 6 5 3

output:

600

result:

ok 1 number(s): "600"

Test #27:

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

input:

6 5
1 2 3 4 5 6
1 3 2 4 5 6
1 2 5 4 3 6
1 3 6 4 2 5
1 6 3 4 5 2

output:

120

result:

ok 1 number(s): "120"

Test #28:

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

input:

6 2
1 6 3 5 4 2
4 2 3 1 5 6

output:

84

result:

ok 1 number(s): "84"

Test #29:

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

input:

6 5
2 1 5 4 3 6
1 6 3 4 5 2
1 2 5 4 6 3
1 2 6 4 5 3
6 2 4 3 5 1

output:

5400

result:

ok 1 number(s): "5400"

Test #30:

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

input:

6 1
3 6 1 4 5 2

output:

8

result:

ok 1 number(s): "8"

Test #31:

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

input:

6 3
1 2 3 4 6 5
6 2 4 3 1 5
6 2 3 4 5 1

output:

72

result:

ok 1 number(s): "72"

Test #32:

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

input:

6 4
1 2 3 6 5 4
6 2 3 4 5 1
6 1 3 4 5 2
1 5 6 4 2 3

output:

5400

result:

ok 1 number(s): "5400"

Test #33:

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

input:

6 3
1 2 6 4 5 3
2 1 3 4 5 6
1 5 3 4 2 6

output:

72

result:

ok 1 number(s): "72"

Test #34:

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

input:

6 5
3 2 6 4 5 1
1 4 3 6 5 2
1 2 4 3 5 6
1 2 4 3 5 6
4 2 1 5 3 6

output:

5400

result:

ok 1 number(s): "5400"

Test #35:

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

input:

6 6
1 5 3 4 2 6
2 6 3 4 5 1
2 6 3 5 4 1
2 1 3 4 5 6
6 2 1 4 5 3
1 5 4 3 2 6

output:

5400

result:

ok 1 number(s): "5400"

Test #36:

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

input:

6 30
5 2 6 4 1 3
1 3 5 2 4 6
1 6 3 4 5 2
6 5 3 4 2 1
1 4 3 2 5 6
4 2 6 1 3 5
3 2 6 4 5 1
6 2 3 4 5 1
6 1 3 5 4 2
4 5 3 1 2 6
2 6 1 4 5 3
1 2 3 6 5 4
1 2 6 4 5 3
6 2 3 4 5 1
2 5 3 4 1 6
1 2 3 5 4 6
1 6 4 5 3 2
1 4 3 5 2 6
1 2 4 3 5 6
1 2 3 4 5 6
3 1 2 4 5 6
1 3 6 4 2 5
1 2 3 4 5 6
1 3 2 4 5 6
1 3 5 4...

output:

5400

result:

ok 1 number(s): "5400"

Test #37:

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

input:

6 30
1 5 3 4 2 6
1 4 5 2 3 6
3 5 2 4 1 6
1 6 3 2 4 5
6 3 4 2 5 1
6 2 3 4 5 1
1 2 6 4 5 3
1 5 3 4 2 6
1 2 4 6 5 3
1 5 3 6 2 4
4 2 6 1 5 3
1 4 3 2 5 6
1 2 6 4 5 3
2 6 3 4 5 1
4 2 3 1 5 6
1 2 3 4 5 6
1 2 4 3 5 6
1 3 2 5 4 6
1 2 3 4 5 6
5 2 3 4 1 6
6 2 1 4 5 3
4 2 3 1 5 6
2 5 3 4 1 6
4 2 3 1 5 6
4 2 3 5...

output:

5400

result:

ok 1 number(s): "5400"

Test #38:

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

input:

6 30
1 5 3 4 6 2
1 3 4 5 2 6
1 4 3 2 5 6
1 3 4 2 5 6
1 6 5 2 3 4
1 2 3 5 4 6
2 1 3 6 5 4
5 1 2 4 3 6
3 2 5 1 4 6
1 3 2 4 5 6
2 1 3 4 5 6
1 3 2 4 5 6
1 4 5 6 3 2
2 1 3 4 5 6
1 3 5 4 6 2
2 1 3 4 5 6
5 6 3 4 1 2
3 4 1 2 5 6
1 6 3 4 5 2
3 1 6 4 5 2
1 2 6 3 5 4
3 4 1 2 5 6
4 2 3 1 5 6
1 2 3 4 5 6
1 2 3 6...

output:

5400

result:

ok 1 number(s): "5400"

Test #39:

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

input:

6 30
6 2 4 3 5 1
4 2 3 1 5 6
6 2 3 4 5 1
3 2 4 6 5 1
5 3 6 4 1 2
1 2 3 5 4 6
1 2 4 3 5 6
5 6 3 2 1 4
2 1 3 4 6 5
1 2 3 5 4 6
1 2 5 4 3 6
4 2 5 1 3 6
4 2 3 5 1 6
1 2 3 5 4 6
1 6 3 5 4 2
6 2 3 4 5 1
6 5 3 4 2 1
5 6 4 3 1 2
1 6 5 4 3 2
2 3 1 4 5 6
1 2 3 5 4 6
1 4 6 2 5 3
1 4 3 5 2 6
1 6 4 3 5 2
1 6 3 4...

output:

5400

result:

ok 1 number(s): "5400"

Test #40:

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

input:

6 30
1 6 3 4 2 5
1 2 3 4 6 5
6 2 5 4 1 3
1 2 5 4 3 6
6 2 5 4 3 1
1 6 3 4 5 2
1 6 2 4 5 3
2 1 3 4 5 6
1 2 3 4 5 6
1 4 3 2 5 6
5 2 3 4 1 6
1 4 5 2 3 6
6 2 1 4 5 3
1 5 3 4 2 6
2 1 6 4 5 3
1 3 2 4 6 5
5 1 3 4 2 6
3 2 4 1 5 6
1 3 6 2 5 4
2 5 3 4 1 6
1 2 3 5 4 6
1 2 5 4 3 6
1 2 6 4 5 3
2 4 6 1 5 3
5 2 3 6...

output:

5400

result:

ok 1 number(s): "5400"

Test #41:

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

input:

6 30
1 3 2 5 4 6
4 2 6 1 5 3
1 2 4 6 5 3
4 2 3 1 6 5
1 6 3 4 2 5
3 4 1 2 5 6
1 5 3 2 4 6
3 2 5 4 1 6
1 2 3 4 5 6
1 6 3 4 2 5
4 2 6 1 5 3
4 1 3 2 5 6
4 2 5 1 3 6
1 6 3 2 5 4
4 5 3 1 2 6
5 2 3 1 4 6
3 1 2 4 5 6
1 6 2 4 5 3
3 2 6 4 5 1
4 2 3 6 5 1
1 2 3 5 6 4
1 2 3 4 5 6
1 2 3 4 5 6
3 2 5 4 1 6
1 2 3 4...

output:

2700

result:

ok 1 number(s): "2700"

Test #42:

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

input:

6 30
2 4 3 1 5 6
2 4 3 1 5 6
2 5 3 4 1 6
3 5 1 4 2 6
1 2 3 5 6 4
1 3 6 4 5 2
1 4 5 2 3 6
1 2 3 5 6 4
1 4 3 5 2 6
2 3 1 4 5 6
3 2 1 6 5 4
3 2 1 5 4 6
6 1 3 4 5 2
3 2 6 4 5 1
1 2 6 3 5 4
1 5 3 2 4 6
5 1 3 4 2 6
3 1 2 4 5 6
3 4 1 2 5 6
1 4 3 5 2 6
4 2 3 6 5 1
5 1 3 4 2 6
1 5 3 2 4 6
4 3 2 1 5 6
2 3 1 4...

output:

2700

result:

ok 1 number(s): "2700"

Test #43:

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

input:

6 30
6 2 3 5 4 1
1 3 4 2 5 6
1 3 6 4 5 2
5 2 3 6 1 4
3 5 1 4 2 6
3 1 2 4 5 6
1 2 4 3 6 5
1 6 3 2 5 4
3 2 5 4 1 6
4 6 3 1 5 2
4 2 3 5 1 6
1 2 5 3 4 6
2 3 1 4 5 6
1 2 6 3 5 4
2 4 3 1 5 6
1 2 3 4 5 6
3 2 4 1 5 6
4 2 3 1 6 5
5 2 3 6 1 4
1 6 3 4 2 5
1 3 5 4 2 6
6 2 3 4 1 5
3 2 6 4 5 1
5 2 4 3 1 6
1 3 6 4...

output:

2700

result:

ok 1 number(s): "2700"

Test #44:

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

input:

6 30
1 2 3 4 5 6
5 2 1 4 3 6
1 3 5 4 2 6
1 2 4 5 3 6
6 1 3 4 5 2
1 2 3 4 5 6
1 5 4 3 2 6
1 5 3 2 4 6
2 1 3 4 6 5
6 2 3 4 1 5
1 2 5 3 4 6
1 3 2 4 6 5
1 3 2 4 6 5
3 2 1 6 5 4
2 5 3 4 1 6
1 6 2 4 5 3
1 4 3 2 6 5
1 2 3 4 5 6
6 2 3 1 5 4
4 2 1 3 5 6
1 3 6 4 5 2
2 4 3 1 5 6
5 2 6 4 1 3
1 2 6 4 3 5
3 4 1 2...

output:

2700

result:

ok 1 number(s): "2700"

Test #45:

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

input:

6 30
1 4 3 2 6 5
2 1 4 3 5 6
1 4 3 5 2 6
1 3 4 2 5 6
1 3 5 4 2 6
4 1 3 2 5 6
1 6 4 3 5 2
4 2 6 1 5 3
4 1 3 2 5 6
3 1 2 4 5 6
5 3 2 4 1 6
1 6 3 2 5 4
1 5 2 4 3 6
1 6 3 5 4 2
3 1 2 4 5 6
1 3 4 2 5 6
1 2 5 3 4 6
1 2 3 4 5 6
3 2 5 4 1 6
2 1 3 5 4 6
4 6 3 1 5 2
2 3 1 4 5 6
5 2 1 4 3 6
1 2 5 3 4 6
1 4 6 2...

output:

2700

result:

ok 1 number(s): "2700"

Test #46:

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

input:

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

output:

54

result:

ok 1 number(s): "54"

Test #47:

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

input:

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

output:

86

result:

ok 1 number(s): "86"

Test #48:

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

input:

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

output:

8

result:

ok 1 number(s): "8"

Test #49:

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

input:

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

output:

846720

result:

ok 1 number(s): "846720"

Test #50:

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

input:

4 3
2 1 3 4
4 2 1 3
3 2 1 4

output:

72

result:

ok 1 number(s): "72"

Test #51:

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

input:

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

output:

1249920

result:

ok 1 number(s): "1249920"

Test #52:

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

input:

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

output:

8592

result:

ok 1 number(s): "8592"

Test #53:

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

input:

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

output:

9960

result:

ok 1 number(s): "9960"

Test #54:

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

input:

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

output:

1104

result:

ok 1 number(s): "1104"

Test #55:

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

input:

6 4
1 4 3 2 5 6
1 2 3 5 4 6
5 2 3 6 1 4
1 2 6 3 4 5

output:

5400

result:

ok 1 number(s): "5400"

Test #56:

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

input:

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

output:

20256

result:

ok 1 number(s): "20256"

Test #57:

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

input:

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

output:

108

result:

ok 1 number(s): "108"

Test #58:

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

input:

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

output:

52

result:

ok 1 number(s): "52"

Test #59:

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

input:

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

output:

2528

result:

ok 1 number(s): "2528"

Test #60:

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

input:

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

output:

13

result:

ok 1 number(s): "13"

Test #61:

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

input:

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

output:

29

result:

ok 1 number(s): "29"

Test #62:

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

input:

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

output:

2976

result:

ok 1 number(s): "2976"

Test #63:

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

input:

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

output:

106560

result:

ok 1 number(s): "106560"

Test #64:

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

input:

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

output:

712

result:

ok 1 number(s): "712"

Test #65:

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

input:

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

output:

89040

result:

ok 1 number(s): "89040"

Test #66:

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

input:

30 5
1 2 3 4 23 9 7 8 6 10 11 12 13 14 15 16 17 18 19 20 22 21 5 24 25 26 27 28 29 30
1 2 3 4 5 6 7 14 9 10 11 12 13 8 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 29 15 14 17 18 19 20 21 22 23 24 25 28 27 26 16 30
1 2 3 4 5 6 7 8 9 10 11 12 15 14 13 16 17 18 19 20 2...

output:

65472

result:

ok 1 number(s): "65472"

Test #67:

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

input:

30 6
1 2 3 4 5 6 7 29 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 8 30
8 2 14 4 5 6 7 1 9 10 11 12 13 3 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 24 21 22 23 20 29 26 27 28 25 30
1 2 3 4 5 14 7 8 9 10 11 12 13 6 15 16 17 18 19 20 2...

output:

175104

result:

ok 1 number(s): "175104"

Test #68:

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

input:

30 5
1 2 3 4 5 6 7 8 9 14 11 12 13 10 15 16 17 18 30 20 21 22 23 24 25 26 27 28 29 19
1 7 3 4 5 6 2 15 9 10 11 12 13 14 28 16 17 18 19 20 21 22 23 24 25 26 27 8 29 30
19 2 3 4 5 6 7 8 24 10 11 12 13 14 15 16 17 18 1 20 21 22 23 9 25 26 27 28 29 30
1 2 3 4 29 6 7 8 9 10 11 30 13 14 15 16 17 18 19 20 ...

output:

653376

result:

ok 1 number(s): "653376"

Test #69:

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

input:

30 4
1 2 18 4 5 28 7 8 9 10 11 12 23 14 15 16 17 3 19 20 21 22 13 24 25 26 27 6 29 30
1 2 11 4 5 6 7 30 9 10 3 12 16 14 15 13 17 18 19 20 21 22 23 24 25 26 27 28 29 8
1 2 3 4 5 6 7 8 9 10 11 12 27 14 21 16 17 18 19 20 15 22 23 24 25 26 13 28 29 30
1 2 3 4 5 6 7 8 9 30 11 12 13 14 15 16 27 18 19 20 2...

output:

2538432

result:

ok 1 number(s): "2538432"

Test #70:

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

input:

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

output:

5448

result:

ok 1 number(s): "5448"

Test #71:

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

input:

30 5
1 2 3 22 5 6 7 8 9 10 11 15 13 14 12 16 17 18 19 20 21 4 23 24 25 26 27 28 29 30
1 2 3 4 18 6 7 8 9 10 11 12 13 14 15 16 17 5 19 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 28 19 20 21 22 23 24 25 26 27 18 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 22 15 16 17 18 19 20 2...

output:

482112

result:

ok 1 number(s): "482112"

Test #72:

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

input:

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

output:

301

result:

ok 1 number(s): "301"

Test #73:

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

input:

30 4
1 2 3 4 5 6 7 8 9 10 11 12 13 28 20 16 17 18 19 15 21 22 23 24 25 26 27 14 29 30
1 2 3 4 5 6 7 8 9 10 26 12 13 14 15 16 17 18 19 20 21 22 27 24 25 11 23 28 29 30
1 25 3 4 5 6 7 8 9 10 2 12 13 14 15 16 17 18 19 20 21 22 23 24 11 26 27 28 29 30
1 2 18 4 5 6 29 8 9 10 11 12 13 14 15 16 17 3 19 20 ...

output:

8928

result:

ok 1 number(s): "8928"

Test #74:

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

input:

30 4
1 30 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 2
1 2 3 4 5 6 7 11 23 22 8 12 13 14 15 16 17 18 19 20 21 10 9 24 25 26 27 28 29 30
1 2 4 3 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 12 3 4 5 6 7 8 9 10 11 2 13 14 15 16 17 18 19 20 2...

output:

1460

result:

ok 1 number(s): "1460"

Test #75:

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

input:

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

output:

3348

result:

ok 1 number(s): "3348"

Test #76:

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

input:

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

output:

596

result:

ok 1 number(s): "596"

Test #77:

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

input:

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

output:

35632939

result:

ok 1 number(s): "35632939"

Test #78:

score: 0
Accepted
time: 102ms
memory: 3768kb

input:

30 6
29 12 2 20 11 9 24 25 6 22 5 30 21 14 15 23 17 16 19 18 13 10 4 8 3 26 27 28 1 7
1 8 3 22 16 6 15 20 9 14 11 28 13 10 19 26 27 2 7 5 21 4 23 24 25 12 29 18 17 30
1 28 4 2 5 6 19 8 14 10 17 12 13 3 15 16 7 29 30 20 21 22 18 9 25 27 23 24 11 26
1 2 3 4 6 25 7 12 9 8 11 23 13 18 15 17 16 10 19 20 ...

output:

404585645

result:

ok 1 number(s): "404585645"

Test #79:

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

input:

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

output:

827

result:

ok 1 number(s): "827"

Test #80:

score: 0
Accepted
time: 100ms
memory: 3856kb

input:

30 5
23 7 3 14 5 6 8 22 15 20 24 12 16 2 26 4 11 18 1 10 21 13 19 17 9 28 27 25 29 30
1 8 15 2 3 6 14 20 24 10 27 12 13 4 11 16 22 18 19 21 23 17 7 9 25 26 5 28 29 30
1 28 19 4 29 6 7 8 9 10 11 12 21 14 15 16 20 30 3 13 18 22 23 27 2 26 24 25 5 17
1 2 8 4 18 11 7 3 20 28 15 6 13 29 17 16 12 19 5 9 2...

output:

404585645

result:

ok 1 number(s): "404585645"

Test #81:

score: 0
Accepted
time: 100ms
memory: 3860kb

input:

30 6
1 5 14 29 2 6 12 16 24 10 11 15 7 3 13 9 20 18 19 17 21 22 23 8 25 26 27 28 4 30
21 11 3 4 5 1 14 8 29 7 27 12 13 18 15 10 17 30 19 20 6 22 23 24 28 26 9 25 16 2
1 2 7 26 5 4 12 3 9 10 18 8 14 17 29 16 20 24 19 30 21 22 23 11 25 6 27 28 15 13
12 3 18 29 1 6 23 28 30 10 5 11 13 14 15 17 4 16 9 2...

output:

404585645

result:

ok 1 number(s): "404585645"

Test #82:

score: 0
Accepted
time: 56ms
memory: 3728kb

input:

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

output:

546259602

result:

ok 1 number(s): "546259602"

Test #83:

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

input:

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

output:

1246

result:

ok 1 number(s): "1246"

Test #84:

score: 0
Accepted
time: 78ms
memory: 3712kb

input:

30 4
1 2 3 26 21 6 9 25 7 10 22 8 13 14 15 16 17 5 23 20 18 11 19 12 24 4 27 28 29 30
5 28 3 23 25 6 1 14 9 10 11 12 24 8 15 16 17 18 19 20 7 22 4 13 21 30 26 2 29 27
1 10 30 21 23 6 7 11 9 22 5 12 4 14 2 8 20 19 16 27 13 28 24 3 25 26 17 15 29 18
19 24 10 12 2 23 7 9 6 3 17 16 18 13 15 4 22 14 27 2...

output:

738501311

result:

ok 1 number(s): "738501311"

Test #85:

score: 0
Accepted
time: 70ms
memory: 4004kb

input:

30 4
1 30 3 19 6 5 7 15 22 11 4 12 21 14 2 16 20 18 10 17 8 13 23 29 24 26 27 28 25 9
8 6 24 29 5 2 4 15 10 7 11 18 17 14 1 22 28 12 19 20 9 16 23 3 25 26 27 13 21 30
7 3 28 4 5 6 1 8 12 11 14 9 13 23 15 16 17 18 19 2 22 24 10 21 25 26 27 20 29 30
24 28 3 9 5 15 10 30 8 18 11 12 13 17 16 7 14 29 19 ...

output:

968567468

result:

ok 1 number(s): "968567468"

Test #86:

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

input:

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

output:

842

result:

ok 1 number(s): "842"

Test #87:

score: 0
Accepted
time: 87ms
memory: 3788kb

input:

30 5
1 8 3 4 5 6 7 2 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1 17 23 4 27 6 11 8 2 10 29 7 13 3 5 20 25 18 19 12 21 22 26 24 14 16 9 15 28 30
12 2 14 28 22 25 7 9 8 10 11 29 13 26 15 16 17 23 19 20 1 5 18 24 6 30 27 4 21 3
8 2 28 19 13 6 9 4 25 10 23 12 22 14 15 5 27 18 21 2...

output:

252043928

result:

ok 1 number(s): "252043928"

Test #88:

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

input:

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

output:

19432

result:

ok 1 number(s): "19432"

Test #89:

score: 0
Accepted
time: 95ms
memory: 3836kb

input:

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

output:

404585645

result:

ok 1 number(s): "404585645"

Test #90:

score: 0
Accepted
time: 99ms
memory: 3772kb

input:

30 5
1 26 14 10 5 18 11 8 28 23 7 12 13 15 3 2 17 21 6 24 20 22 4 27 25 16 19 29 9 30
21 13 2 27 8 14 19 30 15 11 9 23 12 16 24 4 7 25 20 22 1 29 5 17 26 3 10 18 28 6
1 17 3 4 12 6 23 8 9 10 20 2 30 14 22 16 29 18 19 11 21 15 25 27 5 26 13 28 7 24
9 2 3 4 5 6 7 12 17 10 21 20 24 1 15 19 14 18 8 16 1...

output:

404585645

result:

ok 1 number(s): "404585645"

Test #91:

score: 0
Accepted
time: 16ms
memory: 3740kb

input:

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

output:

547624285

result:

ok 1 number(s): "547624285"

Test #92:

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

input:

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

output:

3823

result:

ok 1 number(s): "3823"

Test #93:

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

input:

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

output:

784118547

result:

ok 1 number(s): "784118547"

Test #94:

score: 0
Accepted
time: 99ms
memory: 3776kb

input:

30 5
1 20 10 21 15 3 7 13 29 6 11 12 22 14 4 16 18 26 19 2 30 8 17 24 25 9 27 28 23 5
9 16 18 30 5 19 11 12 15 13 14 27 22 23 20 1 6 21 4 3 7 25 17 2 10 26 24 29 8 28
12 29 8 30 27 18 15 13 6 7 28 26 20 9 11 25 19 4 2 17 24 5 23 3 21 10 14 1 16 22
3 2 5 25 13 6 7 30 9 10 28 12 29 14 15 16 17 18 8 20...

output:

404585645

result:

ok 1 number(s): "404585645"

Test #95:

score: 0
Accepted
time: 103ms
memory: 4060kb

input:

30 6
4 2 9 16 5 30 1 25 15 6 14 3 13 8 27 11 19 26 12 20 7 18 23 24 10 21 22 28 29 17
1 2 18 3 25 5 7 19 9 27 8 12 13 14 15 16 17 4 20 11 21 22 23 10 26 30 6 28 29 24
7 2 28 1 21 5 15 24 11 10 25 3 4 14 18 9 8 6 19 23 26 17 27 13 22 29 30 20 12 16
30 2 21 4 26 17 29 27 9 6 11 12 1 22 13 16 24 23 20 ...

output:

404585645

result:

ok 1 number(s): "404585645"

Test #96:

score: 0
Accepted
time: 109ms
memory: 3836kb

input:

30 30
1 2 3 4 5 6 10 8 9 7 11 12 13 14 15 16 17 18 19 29 21 22 23 24 25 26 27 28 20 30
1 23 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 19 20 21 22 18 24 25 26 27 28 29 30
1 2 3 4 5 6 7 13 9 10 11 12 8 14 19 16 17 18 15 20 21 22 27 24 25 26 23 28 29 30
1 12 3 4 5 6 7 8 9 10 23 2 13 14 15 16 17 18 19 20 ...

output:

404585645

result:

ok 1 number(s): "404585645"

Test #97:

score: 0
Accepted
time: 89ms
memory: 3860kb

input:

30 30
1 5 3 4 2 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 25 28 26 27 24 29 30
1 2 3 4 5 6 7 8 24 10 11 9 13 14 15 16 17 18 19 20 21 22 23 12 25 26 27 28 29 30
1 2 14 4 5 6 7 8 9 10 11 12 13 3 15 16 17 18 19 20 29 22 23 24 25 26 27 28 21 30
1 8 3 4 5 6 7 2 9 10 11 12 13 14 15 16 23 18 19 20 ...

output:

264178870

result:

ok 1 number(s): "264178870"

Test #98:

score: 0
Accepted
time: 104ms
memory: 4004kb

input:

30 30
1 2 3 4 5 6 11 8 9 10 30 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 7
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 25 18 19 20 21 22 23 24 17 26 27 28 29 30
1 2 3 4 5 12 7 22 29 10 11 6 13 14 15 16 17 18 19 20 21 8 23 24 25 26 27 28 9 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 17 16 26 19 23 ...

output:

404585645

result:

ok 1 number(s): "404585645"

Test #99:

score: 0
Accepted
time: 92ms
memory: 3756kb

input:

30 30
1 2 3 4 5 6 24 8 12 10 11 9 13 14 15 16 17 18 19 20 21 22 23 7 25 26 27 28 29 30
1 2 27 4 5 6 7 19 9 10 11 12 13 14 15 16 17 18 8 25 21 22 23 24 20 26 3 28 29 30
16 11 19 4 5 6 7 8 9 10 2 12 13 14 15 1 17 18 3 20 21 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 29 12 11 13 14 15 16 17 18 19 20 ...

output:

355190935

result:

ok 1 number(s): "355190935"

Test #100:

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

input:

30 30
1 2 22 4 5 6 7 30 9 10 11 12 13 14 15 16 17 18 19 20 21 3 23 24 25 26 27 28 29 8
1 2 3 4 5 6 7 8 9 20 11 12 13 14 15 10 17 18 19 16 21 22 23 24 25 26 27 28 29 30
1 2 27 4 22 6 11 8 9 10 7 12 13 14 15 16 17 18 19 20 21 5 23 24 25 26 3 28 29 30
1 2 3 4 5 6 7 8 9 10 11 18 13 14 15 23 17 12 19 20 ...

output:

404585645

result:

ok 1 number(s): "404585645"

Test #101:

score: 0
Accepted
time: 90ms
memory: 3840kb

input:

30 30
1 2 3 6 5 4 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 28 24 25 26 27 23 29 30
1 27 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 21 20 19 22 23 24 25 26 2 28 29 30
1 2 3 4 5 26 7 8 9 10 11 12 13 14 15 16 21 18 19 20 17 22 23 24 25 6 27 28 29 30
1 2 3 4 5 6 7 8 29 10 11 30 13 14 15 16 17 18 19 20...

output:

113887022

result:

ok 1 number(s): "113887022"

Test #102:

score: 0
Accepted
time: 106ms
memory: 3852kb

input:

30 30
21 2 3 4 5 6 7 8 9 10 25 12 13 14 15 16 17 18 19 20 1 22 23 24 11 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 27 18 19 20 21 22 23 24 25 26 29 28 17 30
1 2 3 4 5 6 7 8 9 10 25 12 13 14 15 16 17 18 19 20 21 22 23 24 11 26 27 29 28 30
1 2 3 4 5 6 28 8 9 14 11 12 13 10 15 16 17 18 19 20...

output:

701414999

result:

ok 1 number(s): "701414999"

Test #103:

score: 0
Accepted
time: 105ms
memory: 3788kb

input:

30 30
1 2 3 4 5 6 29 8 9 10 11 12 13 14 25 16 17 18 19 20 21 22 23 24 15 26 27 28 7 30
1 2 3 4 5 6 7 18 9 10 11 12 13 14 15 16 17 8 19 20 21 24 23 22 25 26 27 28 29 30
1 2 28 4 5 6 7 8 9 10 3 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 11 29 30
1 2 3 4 5 21 7 8 9 24 11 12 13 14 15 16 17 18 19 20...

output:

701414999

result:

ok 1 number(s): "701414999"

Test #104:

score: 0
Accepted
time: 94ms
memory: 3724kb

input:

30 30
1 2 21 4 5 6 3 8 9 10 11 12 13 14 15 16 17 18 19 20 7 22 23 24 25 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 26 23 14 15 16 17 18 19 20 21 22 13 24 25 12 27 28 29 30
1 2 3 4 20 6 7 8 9 10 11 12 13 14 15 16 25 18 19 5 21 22 23 24 17 26 27 28 29 30
1 2 3 4 5 6 7 8 9 10 11 27 13 14 15 16 17 18 19 23 ...

output:

156359319

result:

ok 1 number(s): "156359319"

Test #105:

score: 0
Accepted
time: 106ms
memory: 3872kb

input:

30 30
1 2 3 4 5 6 7 8 9 19 11 30 13 14 15 16 17 18 10 20 21 22 23 24 25 26 27 28 29 12
1 2 3 4 5 16 7 8 9 28 11 12 13 14 15 6 17 18 19 20 21 22 23 24 25 26 27 10 29 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 30 23 20 21 22 19 24 25 26 27 28 29 18
1 2 3 4 5 6 7 8 9 10 11 26 13 14 15 16 17 18 19 20 ...

output:

701414999

result:

ok 1 number(s): "701414999"

Test #106:

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

input:

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

output:

310634692

result:

ok 1 number(s): "310634692"

Extra Test:

score: 0
Extra Test Passed