#1184. 卡片游戏

卡片游戏

题目描述

给定 n n 张卡片,每张卡片正反面各有一个数,给定每张卡片正面和反面的数,保证正面的数构成的序列,和反面的数构成的,分别均为 1 1 n n 的排列,可以选择任意张卡片并获得其正反面的数,现在要求有多少种取法,最终所有获得的数至少包含 1 1 n n 每个数至少一次。答案对 998244353 998244353 取模。

输入格式

第一行输入一个整数 nn

第二行输入 nn 个整数 p1,p2,...,pnp_1,p_2,...,p_n ,表示正面的数字。

第三行输入 nn 个整数 q1,q2,...,qnq_1,q_2,...,q_n ,表示反面的数字。

输出格式

输出题目要求的答案。

样例 #1

样例输入 #1

3
1 2 3
2 1 3

样例输出 #1

3

举个例子,你可以拿卡片 11 或者卡片 22 ,这样就能获得数字 121、2 ,然后再拿一个卡片 33 就能保证 11nn 至少只出现一次。

总共的取法有 {1,3},{2,3},{1,2,3}\{1,3\} , \{2,3\} , \{1,2,3\}

样例 #2

样例输入 #2

5
2 3 5 4 1
4 2 1 3 5

样例输出 #2

12

其中一种取法是 {1,2,3}\{1,2,3\}

样例 #3

样例输入 #3

8
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8

样例输出 #3

1

提示

对于 100%100\% 的数据

  • 1  N  2× 105 1\ \leq\ N\ \leq\ 2\times\ 10^5
  • 1  Pi,Qi  N 1\ \leq\ P_i,Q_i\ \leq\ N
  • P,Q P,Q 保证是 nn 的一个排列
  • 所有的输入都是整数