配点 : 600 点
問題文
(1,…,N) の順列 p=(p1,…,pN),q=(q1,…,qN) が与えられます。
(1,…,N) の順列 r=(r1,…,rN) であって、全ての i(1≤i≤N) に対し ri=pi かつ ri=qi となるようなものの総数を (109+7) で割った余りを求めてください。
制約
- 1≤N≤3000
- 1≤pi,qi≤N
- pi=pj(i=j)
- qi=qj(i=j)
- 入力は全て整数である。
入力
入力は以下の形式で標準入力から与えられる。
N
p1 … pN
q1 … qN
出力
答えを出力せよ。
(3,4,1,2),(3,4,2,1),(4,3,1,2),(4,3,2,1) の 4 つが条件を満たします。
答えが 0 になることもあります。
(109+7) で割った余りを出力することに注意してください。