割草
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
割草
问题描述
小核桃觉得他的花园中杂草太多了,于是决定把杂草除一除。
花园可以看作一个 大小的矩阵,其中第 行第 列的地的杂草生长速度为每单位时间 。注意,在 时间点,花园中没有杂草。
在本题中,会给出两个数组 和 ,其中 。
接下来小核桃会进行 次除草,第 次除草发生在 时间点,每次除草会把某一行或者某一列的所有杂草除掉。除草后 上的杂草依然以 的速度生长。
小核桃想知道每次除草除掉的杂草量是多少。由于数据可能过大,所以你需要让答案对 取模后输出。
输入格式
第一行输入用空格隔开的正整数 ,分别表示花园的大小( 时刻花园没有杂草)。 第二行输入 个整数,第 个数表示 。 第三行输入 个整数,第 个数表示 。 第四行输入一个正整数 ,表示有 次除草操作。 接下来 行,每行输入形式为以下两种中的一个:
1 x t:在 时刻除掉所有第 行的草。2 y t:在 时刻除掉所有第 列的草。
输入保证 递增。
输出格式
输出 行,其中第 行表示第 次除草除掉的杂草数量,答案需要对 取模。
样例
输入
2 3
1 2
3 4 5
4
1 1 1
2 1 2
2 3 3
1 1 4
输出
12
15
40
23
样例解释
| 时间点 | 割草前矩阵 | 割草后矩阵 | 割草量 |
|---|---|---|---|
| 1 | [[3, 4, 5], [6, 8, 10]] | [[0, 0, 0], [6, 8, 10]] | 12 |
| 2 | [[3, 4, 5], [12, 16, 20]] | [[0, 4, 5], [0, 16, 20]] | 15 |
| 3 | [[3, 8, 10], [6, 24, 30]] | [[3, 8, 0], [6, 24, 0]] | 40 |
| 4 | [[6, 12, 5], [12, 32, 10]] | [[0, 0, 0], [12, 32, 10]] | 23 |
数据范围与约定
- 对于 20% 的数据:
- 对于 100% 的数据: 且
- 模数: