#P10791. [2024年7月福建集训]错题重练

[2024年7月福建集训]错题重练

小 C 有一份 nn 道题的作业。每道题仅有 A/B 两个选项。

但是小 C 很笨,所以他只会依次按 ABABAB.... 填写答案。填对的题就完成了,填错的答案会按原顺序进入错题重练本。小 C 会继续用上述方法填写剩下的题目,直到所有题都完成。

小 C 不想花太多时间写作业,请问对于所有 2n2^n 种标准答案,需要恰好 kk 次作答完成的方案数。

特别的,若 k=1k=-1,则你需要求出永远也无法完成的方案数。

现在小 C 有 TT 份作业,请你帮他求出答案。由于答案可能特别大,请 mod109+7\bmod 10^9+7 后输出。

输入格式

第一行一个整数 TT,表示询问次数。

接下来对于每个询问,一行两个整数 n,kn,k,表示题目数量和完成次数。

输出格式

对于每个询问,输出一行一个整数,表示可能的方案数 mod109+7\bmod 10^9+7

样例输入

5
3 2
5 -1
20 7
1234 5
11451 4

样例输出

2
22
0
347568647
713703651

样例解释

对于第一组询问,可能的答案为 AAAAAB

数据范围

对于所有数据,满足 $T\le 5,1\le n\le 2\times 10^6,-1\le k\le 2\times 10^6$。

测试点编号 n,kn,k\le 特殊性质
121\sim 2 1818
343\sim 4 20002000 k=1k=-1
565\sim 6
787\sim 8 2×1052\times 10^5 k5k\le 5
9129\sim 12
131413\sim 14 2×1062\times 10^6 k=1k=-1
152015\sim 20