CF1557C.Moamen and XOR
普及+/提高
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Moamen and Ezzat are playing a game. They create an array a of n non-negative integers where every element is less than 2k.
Moamen wins if a1&a2&a3&…&an≥a1⊕a2⊕a3⊕…⊕an.
Here & denotes the bitwise AND operation, and ⊕ denotes the bitwise XOR operation.
Please calculate the number of winning for Moamen arrays a.
As the result may be very large, print the value modulo 1000000007 (109+7).
莫阿门和埃扎特正在玩一个游戏。他们创建一个包含 n 个非负整数的数组 a,其中每个元素均小于 2k。
若满足 a1&a2&a3&…&an≥a1⊕a2⊕a3⊕…⊕an,则莫阿门获胜。
请计算莫阿门获胜的数组 a 的个数。
由于结果可能非常大,请输出其对 1000000007(即 109+7)取模的值。
输入格式
The first line contains a single integer t (1≤t≤5)— the number of test cases.
Each test case consists of one line containing two integers n and k (1≤n≤2⋅105, 0≤k≤2⋅105).
第一行包含一个整数 t(1≤t≤5)——测试用例的数量。
每个测试用例由一行组成,包含两个整数 n 和 k(1≤n≤2⋅105,0≤k≤2⋅105)。
输出格式
For each test case, print a single value — the number of different arrays that Moamen wins with.
Print the result modulo 1000000007 (109+7).
对于每个测试用例,输出一个整数——Moamen 获胜的不同数组的个数。
结果对 1000000007(即 109+7)取模。
输入输出样例
输入#1
3 3 1 2 1 4 0
输出#1
5 2 1
说明/提示
In the first example, n=3, k=1. As a result, all the possible arrays are [0,0,0], [0,0,1], [0,1,0], [1,0,0], [1,1,0], [0,1,1], [1,0,1], and [1,1,1].
Moamen wins in only 5 of them: [0,0,0], [1,1,0], [0,1,1], [1,0,1], and [1,1,1].
在第一个例子中,n=3,k=1。因此,所有可能的数组为 [0,0,0]、[0,0,1]、[0,1,0]、[1,0,0]、[1,1,0]、[0,1,1]、[1,0,1] 和 [1,1,1]。
Moamen 仅在其中 5 种情况下获胜:[0,0,0]、[1,1,0]、[0,1,1]、[1,0,1] 和 [1,1,1]。
输入解题思路,AI测评打分。不知道怎么写?