QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#245178#7687. Randias Permutation TaskzhaohaikunAC ✓480ms19588kbC++142.4kb2023-11-09 19:36:512023-11-09 19:36:57

Judging History

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

  • [2023-11-09 19:36:57]
  • 评测
  • 测评结果:AC
  • 用时:480ms
  • 内存:19588kb
  • [2023-11-09 19:36:51]
  • 提交

answer

#pragma GCC optimize("Ofast,no-stack-protector,unroll-loops")

#include<bits/stdc++.h>
#define rep(i,a,b) for(int i=(a);i<=(b);i++)
#define per(i,a,b) for(int i=(a);i>=(b);i--)
#define op(x) ((x&1)?x+1:x-1)
#define odd(x) (x&1)
#define even(x) (!odd(x))
#define lc(x) (x<<1)
#define rc(x) (lc(x)|1)
#define lowbit(x) (x&-x)
#define mp(x,y) make_pair(x,y)
typedef long long ll;
typedef unsigned long long ull;
typedef double db;
using namespace std;
const int MAXN = 200,mod = 1e9+7;
const int M1 = 1e9 + 7, M2 = 20071211, base = 1e9 + 9;
void add(ll& x,ll y){x = (x+y)%mod;}

int n,m,a[MAXN][MAXN];

namespace T1{
	set<pair <int, int>> f;
	int p[MAXN],q[MAXN];//,tmp[30][MAXN];

	void dfs(int r,int tag){
		if(r==n+1){
			if(!tag)return;
			int h1 = 0, h2 = 0;
			rep(i,1,m){
				h1 = ((ll) h1 * base + p[i]) % M1;
				h2 = ((ll) h2 * base + p[i]) % M2;
				// h = ((ll) h * base + p[i]) % M3;
			}
			f.emplace(h1, h2);
			return;
		}
		dfs(r+1,tag);
		int tmp[m + 5];
		rep(i,1,m)q[i] = a[r][p[i]],tmp[i] = p[i];

		rep(i,1,m)p[i] = q[i];
		dfs(r+1,1);
		rep(i,1,m)p[i] = tmp[i];
	}

	void solve(){
		rep(i,1,m)p[i] = i;
		dfs(1,0);

		cout<<f.size()<<"\n";
	}
};	
#define debug cerr << "[" << __LINE__ << "] "
namespace T2{
	const int MAXM = 20,MAXL = 4e5+10;
	ll fac[MAXM],vis[MAXM],q[MAXM];

	bitset<MAXL>dp[200];
	int p[MAXM];

	int calc(){
		int sum = 0;
		rep(i,1,m)rep(j,i + 1,m)if(q[j]<q[i])sum += fac[m-i];
		return sum;
	}

	void solve(){
		fac[0] = 1;rep(i,1,m)fac[i] = fac[i-1] * i;
		ll A = fac[m];

		per(i,n,1){
			dp[i] |= dp[i+1];
		
			rep(j,1,m)q[j] = a[i][j];
			int h = calc();
			// debug << i << " " << h << endl;
			assert(h<A);
			dp[i][h] = 1;

			rep(j,0,A-1)if(dp[i+1][j]){
				ll num = j;
				fill(vis+1,vis+1+m,1);
				// debug << j << endl;
				rep(k,1,m){
					int rk = num / fac[m-k];
					// debug << k << " " << rk << endl;
					rep(val,1,m)if(vis[val]){
						if(!rk){
							p[k] = val;
							vis[val] = 0;
							break;
						}
						rk--;
					}
					num %= fac[m-k];
				}
				rep(k,1,m)q[k] = a[i][p[k]];
				int h = calc();
				assert(h<A);
				dp[i][h] = 1;
			}
		}

		cout<<dp[1].count()<<"\n";
	}		
};

int main(){
	cin>>m>>n;
	rep(i,1,n){
		rep(j,1,m){
			int v;cin>>v;
			a[i][v] = j;
		}
	}
	
	if(n <= 20){
		T1::solve();
	}else{
		T2::solve();
	}
    return 0;
}

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

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

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

input:

2 1
2 1

output:

1

result:

ok 1 number(s): "1"

Test #3:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

input:

1 1
1

output:

1

result:

ok 1 number(s): "1"

Test #34:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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