AT_arc025_4.[ARC025D] コンセント

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Anti Real Corporation 公司致力于以一种独特的方法来丰富每个人的日常生活。

公司的插座插孔形状特殊,与众不同,由 HH 行 WW 列的小孔组成。插头可以占用相邻的两个未使用小孔,这两个小孔可以是上下邻接或左右邻接。具体来说,如果我们标记第 ii 行第 jj 列的小孔为 (ii, jj),那么:

  • 可以选择 (ii, jj) 和 (i+1i+1, jj) 的两个小孔(1≤i≤H−11 \leq i \leq H-1,1≤j≤W1 \leq j \leq W)。
  • 可以选择 (ii, jj) 和 (ii, j+1j+1) 的两个小孔(1≤i≤H1 \leq i \leq H,1≤j≤W−11 \leq j \leq W-1)。

插头在插入时不能与已用的小孔或已经插上插孔盖的小孔重叠。

某一天,总裁为增加插头插入的趣味性,决定在接下来的 NN 天中,每天在营业开始时执行以下两个操作中的一个:

  • 选中一个未使用的小孔,安装插孔盖。
  • 选中一个已安装插孔盖的小孔,移除插孔盖,使其变为未使用状态。

初始状态下,所有的小孔都是未使用的。

总裁要求部门经理在这 NN 天中每天记录可能的插头组合方式数,并在最后一天报告结果。在考虑组合方式时,不区分不同的插头间以及不同的插孔盖间的差异,即使不使用任何插头也算作一种组合方式。

然而,经理直到截止时间前才想起来这件事。幸运的是,他发现了插孔盖的历史记录,通过这些记录尝试确定每一天可能的组合方式。

由于显然无法逐一检查所有组合,开发团队的你被委派编写一个程序,来有效地解决这个问题。

输入格式

输入以以下格式从标准输入给出:

HH WW NN S1S_1 T1T_1 S2S_2 T2T_2 ... SNS_N TNT_N

  • 第一行包含两个整数 HH 和 WW(1≤H≤21 \leq H \leq 2,1≤W≤10111 \leq W \leq 10^{11}),描述插座的形状为 HH 行 WW 列。
  • 第二行包含一个整数 NN(1≤N≤20,0001 \leq N \leq 20,000),表示操作的天数。
  • 接下来的 NN 行中,每行包含两个整数 SiS_i 和 TiT_i(1≤Si≤H1 \leq S_i \leq H,1≤Ti≤W1 \leq T_i \leq W),表示在第 ii 天的操作:如果在当天营业开始前 (SiS_i, TiT_i) 是未使用状态,则安装插孔盖;否则,移除插孔盖。

输出格式

输出 NN 行。第 ii 行输出在第 ii 天营业开始后的操作后,所有可能的插头组合总数对 1000000007 (= 1,000,000,007)1000000007\ (=\ 1,000,000,007) 取模的结果。

输入输出样例

  • 输入#1

    2 3
    3
    1 1
    2 3
    1 1

    输出#1

    10
    5
    10
  • 输入#2

    2 4
    5
    1 2
    1 1
    2 2
    2 1
    1 4

    输出#2

    27
    17
    7
    7
    3

说明/提示

部分得分

本题有部分得分设定。

  • 对满足 W≤5,000W \leq 5,000 且 N≤3,000N \leq 3,000 的数据集 11,正确解答可得 1010 分。
  • 对满足 W≤100,000W \leq 100,000 且 N≤3,000N \leq 3,000 的数据集 22,除了上述得分外,再得 3030 分。
  • 对于无限制的数据集 33,除了上述得分外,额外得到 6060 分。

示例说明 1

在第 11 天的操作后,插孔的状态如下图所示。图中六边形表示插孔盖的位置。共有以下 1010 种可能的配置。

本翻译由 AI 自动生成

输入解题思路,AI测评打分。不知道怎么写?

首页