Responsive image

问题 F: Function

问题 F: Function

时间限制: 2 Sec  内存限制: 128 MB
提交: 23  解决: 16
[提交][状态][讨论版][命题人:]

题目描述

You are given a permutation a from 0 to n−1 and a permutation b from 0 to m−1.

Define that the domain of function f is the set of integers from 0 to n−1, and the range of it is the set of integers from 0 to m−1.

Please calculate the quantity of different functions f satisfying that f(i)=bf(ai) for each i from 0 to n−1.

Two functions are different if and only if there exists at least one integer from 0 to n−1 mapped into different integers in these two functions.

The answer may be too large, so please output it in modulo 109+7.

输入描述

The input contains multiple test cases.

For each case:

The first line contains two numbers n, m(1≤n≤100000,1≤m≤100000)

The second line contains n numbers, ranged from 0 to n−1, the i-th number of which represents ai−1.

The third line contains m numbers, ranged from 0 to m−1, the i-th number of which represents bi−1.

It is guaranteed that ∑n≤106, ∑m≤106.

输出描述

For each test case, output "Case #x: y" in one line (without quotes), where x indicates the case number starting from 1 and y denotes the answer of corresponding case.

样例输入

3 2
1 0 2
0 1
3 4
2 0 1
0 2 3 1

样例输出

Case #1: 4
Case #2: 4
[提交][状态]
ACM算法攻关部