atcoder#ABC238F. [ABC238F] Two Exams

[ABC238F] Two Exams

Score : 500500 points

Problem Statement

In the Kingdom of Takahashi, NN citizens numbered 11 to NN took an examination of competitive programming. There were two tests, and Citizen ii ranked PiP_i-th in the first test and QiQ_i-th in the second test. There were no ties in either test. That is, each of the sequences PP and QQ is a permutation of (1,2,...,N)(1, 2, ..., N).

Iroha, the president of the kingdom, is going to select KK citizens for the national team at the coming world championship of competitive programming. The members of the national team must be selected so that the following is satisfied.

  • There should not be a pair of citizens (x,y)(x, y) where Citizen xx is selected and Citizen yy is not selected such that Px>PyP_x > P_y and Qx>QyQ_x > Q_y.- In other words, if Citizen yy got a rank smaller than that of Citizen xx in both tests, it is not allowed to select Citizen xx while not selecting Citizen yy.

To begin with, Iroha wants to know the number of ways to select citizens for the national team that satisfy the condition above. Find it to help her. Since this number can be enormous, print it modulo 998244353998244353.

Constraints

  • All values in input are integers.
  • 1N3001 \le N \le 300
  • 1KN1 \le K \le N
  • Each of PP and QQ is a permutation of (1,2,...,N)(1,2,...,N).

Input

Input is given from Standard Input in the following format:

NN KK

P1P_1 P2P_2 \dots PNP_N

Q1Q_1 Q2Q_2 \dots QNQ_N

Output

Print the answer as an integer.

4 2
2 4 3 1
2 1 4 3
3
  • It is fine to select Citizen 11 and Citizen 22 for the team.
  • If Citizen 11 and Citizen 33 are selected, Citizen 44 ranked higher than Citizen 33 did in both tests, so the pair (x,y)=(3,4)(x,y)=(3,4) would violate the condition in the Problem Statement.
  • It is fine to select Citizen 11 and Citizen 44.
  • If Citizen 22 and Citizen 33 are selected, the pair (x,y)=(3,1)(x,y)=(3,1) would violate the condition.
  • It is fine to select Citizen 22 and Citizen 44.
  • If Citizen 33 and Citizen 44 are selected, the pair (x,y)=(3,1)(x,y)=(3,1) would violate the condition.

The final answer is 33.

33 16
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
33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
168558757

All (3316)=1166803110\binom{33}{16} = 1166803110 ways of selecting 1616 from the 3333 citizens satisfy the requirement. Therefore, we should print 11668031101166803110 modulo 998244353998244353, that is, 168558757168558757.

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