A5805. 「NOI2013」矩阵游戏
编程题
提高+/省选-
知识点
题目描述
婷婷是个喜欢矩阵的小朋友,有一天她想用电脑生成一个巨大的 $n$ 行 $m$ 列的矩阵(你不用担心她如何存储)。她生成的这个矩阵满足一个神奇的性质:若用 $F[i][j]$ 来表示矩阵中第 $i$ 行第 $j$ 列的元素,则 $F[i][j]$ 满足下面的递推式:
$$ \begin{cases} F[1][1] = 1 \\ F[i][j] = a * F[i][j-1]+b & j \neq 1 \\ F[i][1] = c * F[i-1][m]+d & i \neq 1 \end{cases} $$
递推式中 $a$,$b$,$c$,$d$ 都是给定的常数。
现在婷婷想知道 $F[n][m]$ 的值是多少,请你帮助她。由于最终结果可能很大,你只需要输出 $F[n][m]$ 除以 $1\ 000\ 000\ 007$ 的余数。
$$ \begin{cases} F[1][1] = 1 \\ F[i][j] = a * F[i][j-1]+b & j \neq 1 \\ F[i][1] = c * F[i-1][m]+d & i \neq 1 \end{cases} $$
递推式中 $a$,$b$,$c$,$d$ 都是给定的常数。
现在婷婷想知道 $F[n][m]$ 的值是多少,请你帮助她。由于最终结果可能很大,你只需要输出 $F[n][m]$ 除以 $1\ 000\ 000\ 007$ 的余数。
输入格式
一行有六个整数 $n$,$m$,$a$,$b$,$c$,$d$。意义如题所述。
输出格式
包含一个整数,表示 $F[n][m]$ 除以 $1\ 000\ 000\ 007$ 的余数。
说明/提示
| 测试点编号 | 数据范围 |
| :-: | :-: |
| 1 | $1 \le n,m \le 10$;$1 \le a,b,c,d \le 1000$ |
| 2 | $1 \le n,m \le 100$;$1 \le a,b,c,d \le 1000$ |
| 3 | $1 \le n,m \le 10^3$;$1 \le a,b,c,d \le 10^9$ |
| 4 | $1 \le n,m \le 10^3$;$1 \le a,b,c,d \le 10^9$ |
| 5 | $1 \le n,m \le 10^9$;$1 \le a = c \le 10^9$;$1 \le b = d \le 10^9$ |
| 6 | $1 \le n,m \le 10^9$;$a = c = 1$;$1 \le b,d \le 10^9$ |
| 7 | $1 \le n,m,a,b,c,d \le 10^9$ |
| 8 | $1 \le n,m,a,b,c,d \le 10^9$ |
| 9 | $1 \le n,m,a,b,c,d \le 10^9$ |
| 10 | $1 \le n,m,a,b,c,d \le 10^9$ |
| 11 | $1 \le n,m \le 10^{1000}$;$a = c = 1$;$1 \le b,d \le 10^9$ |
| 12 | $1 \le n,m \le 10^{1000}$;$1 \le a = c \le 10^9$;$1 \le b = d \le 10^9$ |
| 13 | $1 \le n,m \le 10^{1000}$;$1 \le a,b,c,d \le 10^9$ |
| 14 | $1 \le n,m \le 10^{1000}$;$1 \le a,b,c,d \le 10^9$ |
| 15 | $1 \le n,m \le 10^{20000}$;$1 \le a,b,c,d \le 10^9$ |
| 16 | $1 \le n,m \le 10^{20000}$;$1 \le a,b,c,d \le 10^9$ |
| 17 | $1 \le n,m \le 10^{1,000,000}$;$a = c = 1$;$1 \le b,d \le 10^9$ |
| 18 | $1 \le n,m \le 10^{1,000,000}$;$1 \le a = c \le 10^9$;$1 \le b = d \le 10^9$ |
| 19 | $1 \le n,m \le 10^{1,000,000}$;$1 \le a,b,c,d \le 10^9$ |
| 20 | $1 \le n,m \le 10^{1,000,000}$;$1 \le a,b,c,d \le 10^9$ |
| :-: | :-: |
| 1 | $1 \le n,m \le 10$;$1 \le a,b,c,d \le 1000$ |
| 2 | $1 \le n,m \le 100$;$1 \le a,b,c,d \le 1000$ |
| 3 | $1 \le n,m \le 10^3$;$1 \le a,b,c,d \le 10^9$ |
| 4 | $1 \le n,m \le 10^3$;$1 \le a,b,c,d \le 10^9$ |
| 5 | $1 \le n,m \le 10^9$;$1 \le a = c \le 10^9$;$1 \le b = d \le 10^9$ |
| 6 | $1 \le n,m \le 10^9$;$a = c = 1$;$1 \le b,d \le 10^9$ |
| 7 | $1 \le n,m,a,b,c,d \le 10^9$ |
| 8 | $1 \le n,m,a,b,c,d \le 10^9$ |
| 9 | $1 \le n,m,a,b,c,d \le 10^9$ |
| 10 | $1 \le n,m,a,b,c,d \le 10^9$ |
| 11 | $1 \le n,m \le 10^{1000}$;$a = c = 1$;$1 \le b,d \le 10^9$ |
| 12 | $1 \le n,m \le 10^{1000}$;$1 \le a = c \le 10^9$;$1 \le b = d \le 10^9$ |
| 13 | $1 \le n,m \le 10^{1000}$;$1 \le a,b,c,d \le 10^9$ |
| 14 | $1 \le n,m \le 10^{1000}$;$1 \le a,b,c,d \le 10^9$ |
| 15 | $1 \le n,m \le 10^{20000}$;$1 \le a,b,c,d \le 10^9$ |
| 16 | $1 \le n,m \le 10^{20000}$;$1 \le a,b,c,d \le 10^9$ |
| 17 | $1 \le n,m \le 10^{1,000,000}$;$a = c = 1$;$1 \le b,d \le 10^9$ |
| 18 | $1 \le n,m \le 10^{1,000,000}$;$1 \le a = c \le 10^9$;$1 \le b = d \le 10^9$ |
| 19 | $1 \le n,m \le 10^{1,000,000}$;$1 \le a,b,c,d \le 10^9$ |
| 20 | $1 \le n,m \le 10^{1,000,000}$;$1 \le a,b,c,d \le 10^9$ |