#abc238f. [abc238_f]Two Exams

[abc238_f]Two Exams

問題文

高橋王国にて、 11 から NN までの番号のついた NN 人の国民が競技プログラミングの試験に参加しました。
試験は 22 回からなり、人 ii11 回目の試験で PiP_i 位、 22 回目の試験で QiQ_i 位となりました。
なお、どちらの試験においても、複数人が同じ順位になることはありませんでした。すなわち、順位を表す数列 P,QP,Q はそれぞれ (1,2,...,N)(1,2,...,N) の順列です。

高橋王国の大統領であるいろはちゃんは、この試験の結果に基づいて、 NN 人の中から競技プログラミングの世界大会に出場する KK 人の代表を決めることになりました。
代表を決めるにあたって、以下が成立していなければなりません。

  • xx が代表であり、人 yy が代表でないような人の組 (x,y)(x,y) であって、 Px>PyP_x > P_y かつ Qx>QyQ_x > Q_y であるようなものが存在してはならない。
    • 言い換えると、 22 回の試験の双方で人 yy が人 xx よりも小さい順位を取っているにも拘らず、人 xx が代表で人 yy が代表でないということがあってはならない。

いろはちゃんは、ひとまず上記の条件を満たす代表の選び方の数を知りたいので、この数を求めてください。
ただし、この数は非常に大きくなる場合もあるので、 998244353998244353 で割った余りを出力してください。

制約

  • 入力は全て整数
  • 1leNle3001 \\le N \\le 300
  • 1leKleN1 \\le K \\le N
  • P,QP,Q(1,2,...,N)(1,2,...,N) の順列である。

入力

入力は以下の形式で標準入力から与えられる。

NN KK P1P_1 P2P_2 dots\\dots PNP_N Q1Q_1 Q2Q_2 dots\\dots QNQ_N

出力

答えを整数として出力せよ。


入力例 1

4 2
2 4 3 1
2 1 4 3

出力例 1

3
  • 11 と人 22 を代表にすることは問題ありません。
  • 11 と人 33 を代表にすると、双方の試験で人 44 が人 33 よりも小さい順位を取っているため、 (x,y)=(3,4)(x,y)=(3,4) に対して問題文中の条件に違反します。
  • 11 と人 44 を代表にすることは問題ありません。
  • 22 と人 33 を代表にすると、 (x,y)=(3,1)(x,y)=(3,1) に対して問題文中の条件に違反します。
  • 22 と人 44 を代表にすることは問題ありません。
  • 33 と人 44 を代表にすると、 (x,y)=(3,1)(x,y)=(3,1) に対して問題文中の条件に違反します。

結局、求める答えは 33 通りです。


入力例 2

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

出力例 2

168558757

3333 人から 1616 人を選ぶ binom3316=1166803110\\binom{33}{16} = 1166803110 通りの全てにおいて、問題文中の条件を満たします。
よって、 11668031101166803110998244353998244353 で割った余りである 168558757168558757 を出力することとなります。


入力例 3

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

出力例 3

23