题目描述
你在一个 n 行 m 列的网格上游走。
假设当前位于格子 (x,y),下一时刻将分别以
Px,y,0, Px,y,1, Px,y,2, Px,y,3
的概率走到
(x−1,y), (x+1,y), (x,y−1), (x,y+1).
如果走出了网格,游戏立即结束。
从网格中的一个位置等概率随机出发,求游戏结束时间的期望值乘以 nm 后的结果。
你还需要支持 q 次修改。每次修改某个格子的四个转移概率,并在修改后查询上述问题的答案。所有答案均对 109+7 取模。
输入格式
第一行三个正整数 n,m,q。
接下来 nm 行,每行四个正整数。按照从上到下、每行从左到右的顺序,依次给出每个格子的
P0,P1,P2,P3.
接下来 q 行,每行六个正整数
x,y,P0′,P1′,P2′,P3′,
表示将格子 (x,y) 的四个概率修改为
P0′,P1′,P2′,P3′.
输出格式
输出 q+1 行,每行一个非负整数。
第一行表示所有修改发生前的答案;随后第 i 行表示第 i−1 次修改后的答案。
数据范围
| 测试点编号 |
n,m≤ |
q≤ |
| 1,2 |
10 |
| 3,4,5 |
100 |
100 |
| 6,7 |
300 |
| 8,9 |
300 |
| 10,11,12 |
100 |
1000 |
| 13,14,15,16 |
200 |
| 17,18,19,20 |
300 |
对于所有测试点:
n,m≤300,q≤1000,
1≤x≤n,1≤y≤m.
保证在任何时刻,从任意格子出发的四个概率之和对 109+7 取模后等于 1;所有概率均为区间 [1,109+7) 内的正整数。