QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#240283#7687. Randias Permutation Taskucup-team1198#AC ✓89ms51060kbC++203.1kb2023-11-05 14:10:412023-11-05 14:10:42

Judging History

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

  • [2023-11-05 14:10:42]
  • 评测
  • 测评结果:AC
  • 用时:89ms
  • 内存:51060kb
  • [2023-11-05 14:10:41]
  • 提交

answer

#include <bits/stdc++.h>

using namespace std;
#define ll long long
#define pii pair<int, int>
#define ld long double
#define all(a) (a).begin(), (a).end()


const int MAXN = 180;

int A[MAXN][MAXN];
int cur[MAXN][MAXN];
int n, m;


int trie_go[(1 << 20) * 9 * 9 + 228];
int nodes_cnt = 0;

int trie_node() {
    fill(trie_go + nodes_cnt * n, trie_go + nodes_cnt * n + n, -1);
    ++nodes_cnt;
    return nodes_cnt - 1;
}

int ans = 0;

void go(int i, int mask) {
    if (i == m) {
        if (mask) {
            // add cur[i]
            int cur_node = 0;
            bool is_new = false;
            for (int j = 0; j < n; ++j) {
                if (trie_go[cur_node * n + cur[i][j]] == -1) {
                    is_new = true;
                    trie_go[cur_node * n + cur[i][j]] = trie_node();
                }
                cur_node = trie_go[cur_node * n + cur[i][j]];
            }
            if (is_new)
                ++ans;
        }
        return;
    }
    // not take i
    for (int j = 0; j < n; ++j) {
        cur[i + 1][j] = cur[i][j];
    }
    go(i + 1, mask);
    // take i
    for (int j = 0; j < n; ++j) {
        cur[i + 1][j] = cur[i][A[i][j]];
    }
    go(i + 1, mask | (1 << i));
}

signed main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);

    cin >> n >> m;
    for (int i = 0; i < m; ++i) {
        for (int j = 0; j < n; ++j) {
            cin >> A[i][j];
            --A[i][j];
        }
        //iota(A[i], A[i] + n, 0);
        //random_shuffle(A[i], A[i] + n);
    }


    if (m <= 20) {
        trie_node();
        iota(cur[0], cur[0] + n, 0);
        go(0, 0);
        cout << ans << '\n';
    } else {
        vector<int> facts(n + 1);
        facts[0] = 1;
        for (int i = 1; i <= n; ++i)
            facts[i] = facts[i - 1] * i;
        auto get_ind = [&](vector<int>& cur) {
            for (int i = 0; i < n; ++i) {
                for (int j = i + 1; j < n; ++j) {
                    if (cur[j] > cur[i])
                        --cur[j];
                }
            }
            int ans = 0;
            for (int i = 0; i < n; ++i)
                ans += facts[n - i - 1] * cur[i];
            return ans;
        };
        vector<bool> dp(facts[n], false);
        vector<bool> new_dp(facts[n], false);
        for (int i = 0; i < m; ++i) {
            fill(new_dp.begin(), new_dp.end(), false);
            vector<int> cur(n);
            iota(cur.begin(), cur.end(), 0);
            vector<int> cur2(n);
            int id = 0;
            while (true) {
                if (dp[id]) {
                    new_dp[id] = true;
                }
                if (dp[id] || id == 0) {
                    for (int j = 0; j < n; ++j)
                        cur2[j] = cur[A[i][j]];
                    int nxt_id = get_ind(cur2);
                    new_dp[nxt_id] = true;
                }
                ++id;
                if (!next_permutation(cur.begin(), cur.end()))
                    break;
            }
            swap(dp, new_dp);
        }
        int ans = 0;
        for (bool b : dp)
            ans += b;
        cout << ans << '\n';
    }

    //cerr << clock() * 1.0 / CLOCKS_PER_SEC << '\n';
    return 0;
}

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

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

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: 0ms
memory: 3792kb

input:

2 1
2 1

output:

1

result:

ok 1 number(s): "1"

Test #3:

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

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: 3656kb

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: 3892kb

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: 3708kb

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: 3792kb

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: 0ms
memory: 3708kb

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: 0ms
memory: 3784kb

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: 3884kb

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: 1ms
memory: 6260kb

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: 24ms
memory: 49424kb

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: 1ms
memory: 6740kb

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: 23ms
memory: 51060kb

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: 80ms
memory: 37760kb

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: 1ms
memory: 8012kb

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: 86ms
memory: 37996kb

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: 4284kb

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: 24ms
memory: 3776kb

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: 1ms
memory: 4072kb

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: 24ms
memory: 3632kb

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: 7ms
memory: 3632kb

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: 2ms
memory: 3856kb

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: 3864kb

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: 89ms
memory: 38260kb

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: 1ms
memory: 4508kb

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: 24ms
memory: 48184kb

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: 19ms
memory: 3644kb

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: 24ms
memory: 3916kb

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: 5ms
memory: 3552kb

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: 3668kb

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: 1ms
memory: 5696kb

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: 0ms
memory: 3492kb

input:

1 1
1

output:

1

result:

ok 1 number(s): "1"

Test #34:

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

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: 22ms
memory: 3652kb

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: 28ms
memory: 9616kb

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: 8ms
memory: 7112kb

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: 5888kb

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: 3860kb

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: 3872kb

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: 3516kb

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: 0ms
memory: 3784kb

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: 0ms
memory: 3588kb

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: 0ms
memory: 3592kb

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: 5608kb

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: 0ms
memory: 3556kb

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: 3640kb

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: 0ms
memory: 3520kb

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