Problem Statement
An array a[1], a[2], ... a[k*n] is called a k-multipermutation if each number between 1 and n, inclusive, occurs exactly k times in it.
A k-multipermutation a is called unfriendly if no two adjacent elements in it are equal. For example, the 2-multipermutation (1, 2, 3, 2, 1, 3) is unfriendly, but (1, 2, 2, 3, 1, 3) is not.
You are given
Definition
- Class:
- UnfriendlyMultiPermutation
- Method:
- count
- Parameters:
- int, int
- Returns:
- int
- Method signature:
- int count(int n, int k)
- (be sure your method is public)
Constraints
- n will be between 1 and 20, inclusive.
- k will be between 1 and 5, inclusive.
Examples
2
2
Returns: 2
There are two such multipermutations: (1, 2, 1, 2) and (2, 1, 2, 1).
3
2
Returns: 30
5
1
Returns: 120
All 1-multipermutations (or simply permutations) are unfriendly.
2
4
Returns: 2
1
1
Returns: 1
1
2
Returns: 0
1
3
Returns: 0
1
4
Returns: 0
1
5
Returns: 0
2
1
Returns: 2
2
3
Returns: 2
2
5
Returns: 2
3
1
Returns: 6
3
3
Returns: 174
3
4
Returns: 1092
3
5
Returns: 7188
4
1
Returns: 24
4
2
Returns: 864
4
3
Returns: 41304
4
4
Returns: 2265024
4
5
Returns: 134631576
5
2
Returns: 39480
5
3
Returns: 19606320
5
4
Returns: 804626003
5
5
Returns: 203219378
6
1
Returns: 720
6
2
Returns: 2631600
6
3
Returns: 438575488
6
4
Returns: 140277386
6
5
Returns: 317165676
7
1
Returns: 5040
7
2
Returns: 241133760
7
3
Returns: 418092294
7
4
Returns: 728992941
7
5
Returns: 118448843
8
1
Returns: 40320
8
2
Returns: 83420597
8
3
Returns: 469661638
8
4
Returns: 479268411
8
5
Returns: 342975242
9
1
Returns: 362880
9
2
Returns: 124981851
9
3
Returns: 836854787
9
4
Returns: 898235419
9
5
Returns: 479234341
10
1
Returns: 3628800
10
2
Returns: 254405203
10
3
Returns: 670231580
10
4
Returns: 453649723
10
5
Returns: 477459983
11
1
Returns: 39916800
11
2
Returns: 515604999
11
3
Returns: 34608874
11
4
Returns: 971175096
11
5
Returns: 871121441
12
1
Returns: 479001600
12
2
Returns: 888465295
12
3
Returns: 494181873
12
4
Returns: 819729140
12
5
Returns: 415683080
13
1
Returns: 227020758
13
2
Returns: 185598136
13
3
Returns: 375090565
13
4
Returns: 867560825
13
5
Returns: 835823803
14
1
Returns: 178290591
14
2
Returns: 856777481
14
3
Returns: 894602506
14
4
Returns: 396144007
14
5
Returns: 346215517
15
1
Returns: 674358851
15
2
Returns: 673809918
15
3
Returns: 18793148
15
4
Returns: 306729903
15
5
Returns: 348841564
16
1
Returns: 789741546
16
2
Returns: 836310995
16
3
Returns: 79198411
16
4
Returns: 851182610
16
5
Returns: 634037248
17
1
Returns: 425606191
17
2
Returns: 446761327
17
3
Returns: 469592108
17
4
Returns: 567408557
17
5
Returns: 698689526
18
1
Returns: 660911389
18
2
Returns: 370796721
18
3
Returns: 327901318
18
4
Returns: 180505980
18
5
Returns: 43859891
19
1
Returns: 557316307
19
2
Returns: 462465806
19
3
Returns: 438075748
19
4
Returns: 292781823
19
5
Returns: 366406363
20
1
Returns: 146326063
20
2
Returns: 626079153
20
3
Returns: 187620998
20
4
Returns: 770414171
20
5
Returns: 218637437