3435.Levko and Sets

Time Limit: 1s Memory Limit: 256MB

Levko loves all sorts of sets very much.

Levko has two arrays of integers a1,a2,... ,an and b1,b2,... ,bm and a prime number p. Today he generates n sets. Let's describe the generation process for the i-th set:
First it has a single number 1. Let's take any element c from this set. For all j (1 \le j \le m) if number (c \cdot aibj)modp doesn't occur in the set, then add it to the set. Repeat step 2 as long as we can add at least one element to our set.
Levko wonders, how many numbers belong to at least one set. That is, he wants to know what size is the union of n generated sets.

Input Format(From the terminal/stdin)

The first line contains three integers n, m and p (1 \le n \le 104, 1 \le m \le 105, 2 \le p \le 109), p is prime.

The second line contains space-separated integers a1,a2,... ,an (1 \le ai \lt p). The third line contains space-separated integers b1,b2,... ,bm (1 \le bi \le 109).

Output Format(To the terminal/stdout)

The single number - the size of the union of the sets.

Sample Input 1

Copy
1 1 7
2
5
 · · \n
 \n
 \n

Sample Output 1

Copy
3
 \n

Sample Input 2

Copy
1 2 7
2
2 4
 · · \n
 \n
 · \n

Sample Output 2

Copy
3
 \n

Sample Input 3

Copy
2 1 7
1 6
2
 · · \n
 · \n
 \n

Sample Output 3

Copy
1
 \n

Sample Input 4

Copy
2 1 7
1 6
5
 · · \n
 · \n
 \n

Sample Output 4

Copy
2
 \n

Submit

请先 登录

© 2025 FAQs