#P11326. 【MX-S7-T4】「SMOI-R2」XA-Game

    ID: 12062 远端评测题 3000ms 512MiB 尝试: 0 已通过: 0 显示难度省选/NOI− 上传者: 标签>O2优化矩阵乘法梦熊比赛

【MX-S7-T4】「SMOI-R2」XA-Game

背景

原题链接:https://oier.team/problems/S7D。

题目描述

Alice 和 Bob 在玩一个游戏。

初始地,有一个长度为 nn 的 01 序列,位置编号为 1,2,…,n1,2,\dots,n。双方轮流操作,Alice 先操作。

Alice 的操作是任意选择序列中位置相邻的两个数,将它们合并为它们的异或值(即 C++ 中的 ^ 操作)。

Bob 的操作是任意选择序列中位置相邻的两个数,将它们合并为它们的与值(即 C++ 中的 & 操作)。

游戏将持续进行,直至序列中仅剩一个数。如果最后剩下的数是 11,Alice 获胜;否则,Bob 获胜。

在游戏开始前,Bob 施展了 mm 次魔法调整初始序列,第 ii 次魔法将第 aia_i 个位置的数改为 viv_i。

Alice 想知道,如果双方都使用最优策略,有多少种可能的初始序列(在 Bob 施展魔法之前)能够让她赢得游戏。由于答案可能非常大,你需要将结果对质数 109+710^9 + 7 取模。

输入格式

本题有多组测试数据。

第一行,一个正整数 TT,表示数据组数。接下来,对于每组数据:

  • 第一行,两个非负整数 n,mn, m,分别表示 01 序列的长度和 Bob 的魔法操作次数。
  • 接下来 mm 行,第 ii 行两个非负整数 ai,via_i, v_i,表示第 ii 次魔法操作将第 aia_i 个位置的数改为 viv_i。保证 ai\boldsymbol{a_i} 严格递增给出,即 1≤a1<a2<⋯<am≤n\boldsymbol{1 \le a_1 < a_2 < \cdots < a_m \le n}。

输出格式

对于每组测试数据:

  • 仅一行,一个整数,表示答案对 109+710^9 + 7 取模后的结果。
5
3 0
5 2
2 0
4 1
6 3
1 0
2 1
4 1
1234 4
52 1
110 1
520 0
999 1
114514 0
3
12
32
27109943
596672839

提示

【样例解释 #1】

第一组数据中,可以让 Alice 赢的序列有 110110、101101、011011 共 33 种。

第二组数据中,可以让 Alice 赢的序列有 1010010100、1110011100、1011010110、1111011110、1000110001、1100111001、0010100101、0110101101、1001110011、1101111011、0011100111、0111101111 共 1212 种。

其中序列 1110011100,在 Bob 实施完魔法后变成了 1011010110。Alice 第一次操作可以合并第四个数和第五个数,序列变成 10111011,可以发现 Bob 无论怎么操作 Alice 都会赢。

【样例 #2】

见附件中的 game/game2.in 与 game/game2.ans。

该组样例满足测试点 5∼65\sim6 的约束条件。

【样例 #3】

见附件中的 game/game3.in 与 game/game3.ans。

该组样例满足测试点 10∼1110\sim11 的约束条件。

【样例 #4】

见附件中的 game/game4.in 与 game/game4.ans。

该组样例满足测试点 12∼1312\sim13 的约束条件。

【样例 #5】

见附件中的 game/game5.in 与 game/game5.ans。

该组样例满足测试点 18∼2018\sim20 的约束条件。

【数据范围】

对于所有测试数据,保证:1≤T≤5×1051\le T\le5\times 10^5,1≤n≤10151\le n\le 10^{15},0≤m≤n0\le m\le n,∑m≤5×105\sum m \le5\times 10^5,1≤ai≤n1\le a_i\le n,ai<ai+1a_i < a_{i + 1},vi∈{0,1}v_i\in\{0,1\}。

测试点编号 T≤T\le n≤n\le ∑m≤\sum m\le 特殊性质
11 4040 2020 4040 无
2∼42\sim4 10310^3 5×1025\times10^2 5×1055\times10^5 A
5∼65\sim6 B
7∼97\sim9 C
10∼1110\sim11 2×1052\times 10^5 10610^6 00 无
12∼1312\sim13 2×1052\times10^5
1414 2×1032\times 10^3 101510^{15} 00
15∼1615\sim16 2×1032\times10^3
1717 5×1055\times 10^5 00
18∼2018\sim20 5×1055\times10^5
  • 特殊性质 A:n=mn = m。
  • 特殊性质 B:n=mn = m,且 vi=1v_i=1。
  • 特殊性质 C:n=mn = m,且 vv 中没有相邻的两个 00,即 vi+vi+1≠0v_i + v_{i + 1} \ne 0。