#P16128. [2026年山东集训一轮]第三题

[2026年山东集训一轮]第三题

题目描述

称一对数组 a1na_{1\sim n}b1mb_{1\sim m} 合法,当且仅当满足以下条件:

  • 对所有 i,ji,j,有 ai,bj[0,2k1]a_i,b_j\in [0,2^k-1]
  • aa 中元素两两不同,bb 中元素两两不同;
  • 对于 1imin(n,m)1\le i\le \min(n,m),有 aibia_i\ne b_i
  • aa 中所有数的异或和等于 bb 中所有数的异或和。

请计算合法数组对 (a,b)(a,b) 的数量,并对 109+710^9+7 取模。

输入格式

每个测试点包含多组数据。

第一行一个正整数 TT,表示数据组数。

对于每组数据,输入一行三个正整数 n,m,kn,m,k

输出格式

对于每组数据,输出一行一个非负整数,表示答案。

样例 1 输入

8
1 1 1
1 1 2
1 2 1
1 2 2
2 1 1
2 1 2
2 2 1
2 2 2

样例 1 输出

0
0
1
9
1
9
2
36

样例 2

见下发文件。

数据范围与约定

对于全部测试数据,满足:

  • 1T301\le T\le 30
  • 1n,m1061\le n,m\le 10^6
  • 1k1091\le k\le 10^9
测试点编号 TT\le nn\le mm\le kk\le 其它条件
121\sim 2 4 3 4
343\sim 4 30 5
565\sim 6 100 1 8
797\sim 9 10610^6 10910^9
10 2
111311\sim 13 7
141514\sim 15 1000 n=m+1n=m+1
161716\sim 17 3 10610^6
18 30
192019\sim 20 1000
212321\sim 23 3 10610^6
242524\sim 25 30