QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#239662#7687. Randias Permutation Taskucup-team1516#AC ✓887ms50612kbC++204.3kb2023-11-04 22:18:112023-11-04 22:18:11

Judging History

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

  • [2023-11-04 22:18:11]
  • 评测
  • 测评结果:AC
  • 用时:887ms
  • 内存:50612kb
  • [2023-11-04 22:18:11]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define ull unsigned long long
#define db double
#define pii pair<int,int>
#define pli pair<ll,int>
#define pil pair<int,ll>
#define pll pair<ll,ll>
#define ti3 tuple<int,int,int>
#define int128 __int128_t
#define pii128 pair<int128,int128>
const int inf = 1 << 30;
const ll linf = 1e18;
const ll mod = 1e9 + 7;
const db EPS = 1e-10;
const db pi = acos(-1);
template<class T> bool chmin(T& x, T y){
    if(x > y) {
        x = y;
        return true;
    } else return false;
}
template<class T> bool chmax(T& x, T y){
    if(x < y) {
        x = y;
        return true;
    } else return false;
}

// overload macro
#define CAT( A, B ) A ## B
#define SELECT( NAME, NUM ) CAT( NAME, NUM )

#define GET_COUNT( _1, _2, _3, _4, _5, _6 /* ad nauseam */, COUNT, ... ) COUNT
#define VA_SIZE( ... ) GET_COUNT( __VA_ARGS__, 6, 5, 4, 3, 2, 1 )

#define VA_SELECT( NAME, ... ) SELECT( NAME, VA_SIZE(__VA_ARGS__) )(__VA_ARGS__)

// rep(overload)
#define rep( ... ) VA_SELECT(rep, __VA_ARGS__)
#define rep2(i, n) for (int i = 0; i < int(n); i++)
#define rep3(i, a, b) for (int i = a; i < int(b); i++)
#define rep4(i, a, b, c) for (int i = a; i < int(b); i += c)

// repll(overload)
#define repll( ... ) VA_SELECT(repll, __VA_ARGS__)
#define repll2(i, n) for (ll i = 0; i < (ll)(n); i++)
#define repll3(i, a, b) for (ll i = a; i < (ll)(b); i++)
#define repll4(i, a, b, c) for (ll i = a; i < (ll)(b); i += c)

// rrep(overload)
#define rrep( ... ) VA_SELECT(rrep, __VA_ARGS__)    
#define rrep2(i, n) for (int i = n - 1; i >= 0; i--)
#define rrep3(i, a, b) for (int i = b - 1; i >= a; i--)
#define rrep4(i, a, b, c) for (int i = b - 1; i >= a; i -= c)

// rrepll(overload)
#define rrepll( ... ) VA_SELECT(rrepll, __VA_ARGS__)
#define rrepll2(i, n) for (ll i = (ll)(n) - 1; i >= 0ll; i--)
#define rrepll3(i, a, b) for (ll i = b - 1; i >= (ll)(a); i--)
#define rrepll4(i, a, b, c) for (ll i = b - 1; i >= (ll)(a); i -= c)

// for_earh
#define fore(e, v) for (auto&& e : v)

// vector
#define all(v) v.begin(), v.end()
#define rall(v) v.rbegin(), v.rend()

int n, m;
int A[181][181];
vector<int> ps[362880];

int head = 1;
int to[4000000][10];
int val[4000000];

void insert_num(int v, int num, vector<int>& p, int idx) {
    if (idx == (int)p.size()) {
        val[v] = num;
        return;
    }

    if (to[v][p[idx]] == 0) to[v][p[idx]] = head++;

    insert_num(to[v][p[idx]], num, p, idx + 1);
}

int get_num(int v, vector<int>& p, int idx) {
    if (idx == (int)p.size()) {
        return val[v];
    } else {
        return get_num(to[v][p[idx]], p, idx + 1);
    }
}

int main() {
    cin.tie(nullptr);
    ios_base::sync_with_stdio(false);
    cout << fixed << setprecision(20);
    cin >> m >> n;
    
    rep (i, n) rep (j, m) cin >> A[i][j], A[i][j]--;

    if (n <= 20) {
        set<vector<int>> st;
        rep (i, 1, 1 << n) {
            vector<int> p[2];
            rep (j, 2) {
                p[j].resize(m);
                iota(all(p[j]), 0);
            }

            int cnt = 0;
            rep (j, n) {
                if (!(i >> j & 1)) continue;
                rep (k, m) {
                    p[cnt ^ 1][k] = p[cnt][A[j][k]];
                }
                cnt ^= 1;
            }

            st.insert(p[cnt]);
        }

        cout << st.size() << endl;

    } else {
        vector<int> p(m);
        iota(all(p), 0);
        int cnt = 0;
        do {
            insert_num(0, cnt, p, 0);
            ps[cnt++] = p;
        } while (next_permutation(all(p)));

        vector<vector<int>> dp(n + 1, vector<int>(cnt, 0));
        dp[0][0] = true;
        bool flag = false;
        rep (i, n) {
            rep (j, cnt) {
                if (!dp[i][j]) continue;

                dp[i + 1][j] = true;

                vector<int> np(m);
                rep (k, m) {
                    np[k] = ps[j][A[i][k]];
                }

                int tonum = get_num(0, np, 0);
                if (tonum == 0) flag = true;
                dp[i + 1][tonum] = true;
            }
        }

        int ans = flag;
        rep (i, 1, cnt) {
            ans += dp[n][i];
        }

        cout << ans << endl;
    
    }
}

这程序好像有点Bug,我给组数据试试?

详细

Test #1:

score: 100
Accepted
time: 3ms
memory: 12084kb

input:

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

output:

8

result:

ok 1 number(s): "8"

Test #2:

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

input:

2 1
2 1

output:

1

result:

ok 1 number(s): "1"

Test #3:

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

input:

1 180
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
...

output:

1

result:

ok 1 number(s): "1"

Test #4:

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

input:

180 1
52 71 167 89 165 102 119 125 9 128 180 24 48 172 108 22 164 28 159 111 30 91 67 51 136 97 126 133 177 65 115 157 114 11 171 178 23 127 163 103 99 18 56 94 176 77 44 1 124 74 61 87 4 40 63 92 169 84 146 6 88 55 152 49 10 90 43 174 70 50 69 154 73 147 110 20 82 59 112 12 64 143 16 138 5 170 155 ...

output:

1

result:

ok 1 number(s): "1"

Test #5:

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

input:

2 90
1 2
1 2
1 2
1 2
2 1
2 1
2 1
2 1
1 2
2 1
1 2
1 2
1 2
2 1
2 1
2 1
2 1
1 2
1 2
1 2
1 2
2 1
1 2
2 1
1 2
1 2
1 2
2 1
2 1
1 2
2 1
1 2
2 1
1 2
1 2
2 1
1 2
2 1
2 1
2 1
2 1
1 2
2 1
2 1
2 1
2 1
1 2
1 2
2 1
2 1
1 2
1 2
1 2
2 1
1 2
2 1
2 1
1 2
2 1
2 1
2 1
2 1
2 1
2 1
2 1
1 2
1 2
1 2
2 1
1 2
1 2
2 1
1 2
1 2...

output:

2

result:

ok 1 number(s): "2"

Test #6:

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

input:

90 2
43 44 28 69 66 18 5 23 87 8 24 89 31 29 81 1 68 2 78 53 49 54 4 13 77 61 33 57 63 85 55 79 46 35 45 64 65 42 30 6 19 74 82 80 17 26 32 59 7 72 16 3 47 73 39 36 25 34 56 86 71 62 84 40 41 11 50 27 20 14 37 12 38 58 48 83 76 70 51 88 22 90 21 9 10 60 15 52 75 67
9 73 52 51 81 16 71 77 6 57 11 75 ...

output:

3

result:

ok 1 number(s): "3"

Test #7:

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

input:

3 60
2 1 3
3 1 2
3 2 1
1 2 3
1 2 3
3 2 1
3 1 2
2 3 1
2 1 3
3 1 2
2 3 1
2 3 1
2 1 3
3 2 1
3 1 2
3 2 1
1 2 3
2 1 3
2 1 3
2 1 3
2 3 1
2 3 1
2 3 1
3 1 2
1 2 3
3 1 2
2 3 1
2 3 1
2 1 3
1 2 3
3 1 2
2 1 3
2 3 1
2 3 1
2 3 1
3 1 2
2 3 1
1 2 3
1 2 3
3 2 1
3 1 2
3 1 2
2 3 1
1 3 2
3 1 2
1 3 2
1 2 3
1 3 2
1 3 2
3...

output:

6

result:

ok 1 number(s): "6"

Test #8:

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

input:

60 3
35 38 36 43 59 60 20 16 8 51 58 18 33 26 44 7 41 27 39 9 37 48 25 40 30 14 21 13 5 1 19 11 3 28 57 47 17 56 45 34 12 49 29 32 55 24 31 50 42 22 53 23 4 15 2 46 6 10 52 54
41 49 10 55 3 38 35 29 6 26 2 46 58 39 24 47 51 25 44 37 42 43 20 53 60 12 40 17 28 13 27 57 15 52 8 22 11 14 59 21 48 9 32 ...

output:

7

result:

ok 1 number(s): "7"

Test #9:

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

input:

4 45
1 3 4 2
2 3 4 1
4 1 3 2
4 1 2 3
1 4 3 2
3 4 2 1
2 3 4 1
1 3 2 4
2 1 4 3
4 2 3 1
4 1 3 2
1 3 4 2
2 4 3 1
4 2 3 1
1 3 2 4
3 2 1 4
2 3 4 1
3 2 4 1
1 2 4 3
4 1 2 3
4 3 2 1
3 4 1 2
1 3 2 4
2 4 3 1
4 2 1 3
2 3 4 1
4 2 1 3
4 2 3 1
1 2 3 4
1 3 2 4
1 4 3 2
3 2 4 1
2 3 1 4
1 3 4 2
3 1 2 4
1 3 2 4
3 2 4 1...

output:

24

result:

ok 1 number(s): "24"

Test #10:

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

input:

45 4
44 38 33 27 25 17 35 4 22 41 15 3 10 16 21 28 23 19 34 37 2 32 43 12 6 31 29 9 45 18 11 30 13 26 42 5 39 40 8 24 14 1 7 20 36
28 43 12 34 21 7 20 26 13 1 25 4 44 32 11 15 33 18 14 5 6 42 45 36 9 35 2 30 38 10 41 27 17 23 19 8 29 16 3 37 40 31 39 22 24
5 22 23 43 36 33 29 39 44 9 35 34 7 42 8 11...

output:

15

result:

ok 1 number(s): "15"

Test #11:

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

input:

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

output:

1023

result:

ok 1 number(s): "1023"

Test #12:

score: 0
Accepted
time: 211ms
memory: 41616kb

input:

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

output:

252941

result:

ok 1 number(s): "252941"

Test #13:

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

input:

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

output:

1023

result:

ok 1 number(s): "1023"

Test #14:

score: 0
Accepted
time: 218ms
memory: 41012kb

input:

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

output:

252421

result:

ok 1 number(s): "252421"

Test #15:

score: 0
Accepted
time: 864ms
memory: 50612kb

input:

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

output:

342954

result:

ok 1 number(s): "342954"

Test #16:

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

input:

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

output:

511

result:

ok 1 number(s): "511"

Test #17:

score: 0
Accepted
time: 887ms
memory: 50252kb

input:

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

output:

342507

result:

ok 1 number(s): "342507"

Test #18:

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

input:

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

output:

511

result:

ok 1 number(s): "511"

Test #19:

score: 0
Accepted
time: 18ms
memory: 22032kb

input:

8 22
7 5 2 8 4 3 6 1
2 3 5 8 7 1 4 6
3 5 6 8 1 4 2 7
7 8 1 5 4 3 6 2
3 8 2 1 4 5 7 6
5 4 2 8 1 6 3 7
7 2 8 5 3 6 4 1
3 5 7 1 2 6 8 4
3 1 4 5 7 6 2 8
1 2 8 5 7 3 4 6
2 5 1 7 3 4 8 6
2 6 8 5 3 4 1 7
8 2 1 4 6 7 3 5
7 6 2 8 4 3 1 5
6 2 1 8 7 5 4 3
6 7 1 2 8 4 3 5
3 6 4 1 5 7 8 2
6 5 8 1 2 7 4 3
5 7 2 1...

output:

40320

result:

ok 1 number(s): "40320"

Test #20:

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

input:

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

output:

255

result:

ok 1 number(s): "255"

Test #21:

score: 0
Accepted
time: 170ms
memory: 12756kb

input:

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

output:

9

result:

ok 1 number(s): "9"

Test #22:

score: 0
Accepted
time: 45ms
memory: 12456kb

input:

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

output:

10

result:

ok 1 number(s): "10"

Test #23:

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

input:

8 22
2 3 4 5 6 7 8 1
3 4 5 6 7 8 1 2
4 5 6 7 8 1 2 3
5 6 7 8 1 2 3 4
6 7 8 1 2 3 4 5
7 8 1 2 3 4 5 6
8 1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
2 3 4 5 6 7 8 1
3 4 5 6 7 8 1 2
4 5 6 7 8 1 2 3
5 6 7 8 1 2 3 4
6 7 8 1 2 3 4 5
7 8 1 2 3 4 5 6
8 1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
2 3 4 5 6 7 8 1
3 4 5 6 7 8 1 2
4 5 6 7...

output:

8

result:

ok 1 number(s): "8"

Test #24:

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

input:

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

output:

18

result:

ok 1 number(s): "18"

Test #25:

score: 0
Accepted
time: 882ms
memory: 50512kb

input:

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

output:

342762

result:

ok 1 number(s): "342762"

Test #26:

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

input:

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

output:

511

result:

ok 1 number(s): "511"

Test #27:

score: 0
Accepted
time: 211ms
memory: 39724kb

input:

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

output:

252874

result:

ok 1 number(s): "252874"

Test #28:

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

input:

8 22
4 7 3 5 6 8 2 1
1 5 3 4 8 6 2 7
4 2 5 6 8 7 1 3
4 5 3 2 8 6 1 7
8 7 4 6 3 2 1 5
4 7 1 3 5 8 6 2
1 3 7 4 6 2 5 8
4 7 6 2 8 1 3 5
7 1 4 5 8 6 3 2
8 2 5 6 3 1 4 7
1 8 5 6 3 7 4 2
5 4 3 7 2 6 1 8
8 4 5 2 1 3 6 7
4 2 5 3 1 8 6 7
4 6 5 3 8 2 1 7
8 7 5 3 6 2 4 1
3 5 8 1 6 7 2 4
8 1 7 5 6 2 4 3
7 2 3 5...

output:

40320

result:

ok 1 number(s): "40320"

Test #29:

score: 0
Accepted
time: 185ms
memory: 13836kb

input:

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

output:

222

result:

ok 1 number(s): "222"

Test #30:

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

input:

8 22
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
5 7 3 1 4 2 8 6
3 2 7 4 1 6 8 5
6 1 5 3 8 2 4 7
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4 1 6 8 5
3 2 7 4...

output:

105

result:

ok 1 number(s): "105"

Test #31:

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

input:

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

output:

39

result:

ok 1 number(s): "39"

Test #32:

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

input:

180 1
1 2 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 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 10...

output:

1

result:

ok 1 number(s): "1"

Test #33:

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

input:

1 1
1

output:

1

result:

ok 1 number(s): "1"

Test #34:

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

input:

2 90
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2
1 2...

output:

1

result:

ok 1 number(s): "1"

Test #35:

score: 0
Accepted
time: 153ms
memory: 13548kb

input:

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

output:

1

result:

ok 1 number(s): "1"

Test #36:

score: 0
Accepted
time: 302ms
memory: 18860kb

input:

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

output:

51528

result:

ok 1 number(s): "51528"

Test #37:

score: 0
Accepted
time: 67ms
memory: 14296kb

input:

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

output:

13792

result:

ok 1 number(s): "13792"

Test #38:

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

input:

8 22
1 4 3 2 5 6 7 8
1 2 3 8 5 6 7 4
8 2 3 4 5 6 7 1
1 2 3 6 5 4 7 8
1 2 3 7 5 6 4 8
3 2 1 4 5 6 7 8
7 2 3 4 5 6 1 8
1 2 3 4 5 7 6 8
7 2 3 4 5 6 1 8
3 2 1 4 5 6 7 8
1 2 3 4 5 6 7 8
2 1 3 4 5 6 7 8
1 2 3 4 5 6 7 8
4 2 3 1 5 6 7 8
1 2 7 4 5 6 3 8
1 2 3 6 5 4 7 8
1 2 3 4 5 6 7 8
1 2 3 6 5 4 7 8
1 7 3 4...

output:

5136

result:

ok 1 number(s): "5136"

Test #39:

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

input:

4 45
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 4 3 2
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
2 1 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4...

output:

4

result:

ok 1 number(s): "4"

Test #40:

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

input:

3 60
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
1...

output:

2

result:

ok 1 number(s): "2"

Test #41:

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

input:

5 36
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 5 4 3
4 2 3 1 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 4 3...

output:

8

result:

ok 1 number(s): "8"

Test #42:

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

input:

5 36
1 2 3 4 5
1 2 3 4 5
1 4 3 2 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 4 3 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3...

output:

16

result:

ok 1 number(s): "16"

Test #43:

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

input:

4 45
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 3 2 4
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 4 3 2
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3
1 2 4 3...

output:

6

result:

ok 1 number(s): "6"

Test #44:

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

input:

5 36
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
4 2 3 1 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 4...

output:

4

result:

ok 1 number(s): "4"

Test #45:

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

input:

5 36
1 2 5 4 3
1 2 5 4 3
4 2 3 1 5
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 4 3 5
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5 4 3
1 2 5...

output:

44

result:

ok 1 number(s): "44"

Test #46:

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

input:

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

output:

18

result:

ok 1 number(s): "18"

Test #47:

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

input:

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

output:

42

result:

ok 1 number(s): "42"

Test #48:

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

input:

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

output:

12

result:

ok 1 number(s): "12"

Extra Test:

score: 0
Extra Test Passed