#M260536. 玩牌

玩牌

题目描述

小Z与小K正在玩牌,游戏规则如下:

  1. 开始时一共有 2n2n 张牌,分别为 1,2,3...2n1,2,3...2n。 两人手上各被发了 nn 张牌。
  2. 每次两人都拿出自己手上最上方的牌进行PK,牌面大的人可以丢弃该牌并获得一分;牌面小的人不可弃牌,下一轮依旧使用该牌PK

小Z已经通过不可告人的方式得知了小K牌的顺序,现在他可以自由排布自己手上的牌。一共有多少种排列方法,可以使得小Z最后得分最多?

最后结果可能很大,结果对 10000000071000000007 取模

输入格式

第一行,11 个正整数 nn

第二行,nn 个正整数 aia_i,表示小Z手上的牌

第三行,nn 个正整数 bib_i,表示小K手上的牌

输出格式

11 个整数,表示小Z能获得最高分的排列的种类数。

输入输出样例

4
1 6 3 2
4 5 7 8
6

样例 #1\tt \#1说明

小K的牌为 [4,5,7,8][4, 5, 7, 8]

小Z把自己的牌可以排成:

$[6,1,2,3],[6,1,3,2],[6,2,1,3],[6,2,3,1],[6,3,1,2],[6,3,2,1]$ 都可以获得最高分 22

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

数据范围

30%:n830\%:n\le 8

100%:1n105,1ai,bi2n100\%:1\le n\le 10^5,1\le a_i,b_i \le 2n 且各不相同