题库练习 Fafa and Ancient Alphabet
← 上一题 下一题 →

A11617 | Fafa and Ancient Alphabet

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

Ancient Egyptians are known to have used a large set of symbols ![](/uploads/acgo/image/d43440a512a3d535_14b7f360ae04.jpeg) to write on the walls of the temples. Fafa and Fifa went to one of the temples and found two non-empty words $S_{1}$ and $S_{2}$ of equal lengths on the wall of temple written one below the other. Since this temple is very ancient, some symbols from the words were erased. The symbols in the set ![](/uploads/acgo/image/d43440a512a3d535_14b7f360ae04.jpeg) have equal probability for being in the position of any erased symbol.

Fifa challenged Fafa to calculate the probability that $S_{1}$ is lexicographically greater than $S_{2}$ . Can you help Fafa with this task?

You know that ![](/uploads/acgo/image/61c282acb29a5f7d_cd3ef2568ba0.jpeg), i. e. there were $m$ distinct characters in Egyptians' alphabet, in this problem these characters are denoted by integers from $1$ to $m$ in alphabet order. A word $x$ is lexicographically greater than a word $y$ of the same length, if the words are same up to some position, and then the word $x$ has a larger character, than the word $y$ .

We can prove that the probability equals to some fraction ![](/uploads/luogu/CF935D/f3d3518082efa9b78c1dfc7f1e277e49a9674698_840fb46fe670.png), where $P$ and $Q$ are coprime integers, and ![](/uploads/luogu/CF935D/9d39e8956ca5ae36ed529a9998b81f8c971b6e39_be026ec90a37.png). Print as the answer the value ![](/uploads/luogu/CF935D/9db35f1977f217526a6ba86931500db815df9867_0f29bb9842c3.png), i. e. such a non-negative integer less than $10^{9}+7$ , such that ![](/uploads/luogu/CF935D/377c132d9f19a05fde19ac3441d728f7ce7dc195_58e7068e79e0.png), where ![](/uploads/acgo/image/a31cb9c653748c99_7d76c0b7a071.jpeg) means that $a$ and $b$ give the same remainders when divided by $m$ .

输入格式

The first line contains two integers $n$ and $m$ ( $1<=n,m<=10^{5}$ ) — the length of each of the two words and the size of the alphabet ![](/uploads/acgo/image/b14fe4908fe276a3_dbd048644d53.jpeg), respectively.

The second line contains $n$ integers $a_{1},a_{2},...,a_{n}$ ( $0<=a_{i}<=m$ ) — the symbols of $S_{1}$ . If $a_{i}=0$ , then the symbol at position $i$ was erased.

The third line contains $n$ integers representing $S_{2}$ with the same format as $S_{1}$ .

输出格式

Print the value ![](/uploads/luogu/CF935D/409150ea0aec421ee48df6cd56fed827ad4a4771_54e2361860ac.png), where $P$ and $Q$ are coprime and ![](/uploads/acgo/image/2006aefa48e27c40_f60683ec8f86.jpeg) is the answer to the problem.

输入输出样例

输入 #1
1 2
0
1
输出 #1
500000004
输入 #2
1 2
1
0
输出 #2
0
输入 #3
7 26
0 15 12 9 13 0 14
11 1 0 13 15 12 0
输出 #3
230769233
C++ 编辑器
输入
输出