#P11655. 「FAOI-R5」Lovely 139

    ID: 12595 远端评测题 2000ms 512MiB 尝试: 0 已通过: 0 显示难度普及+/提高− 上传者: 标签>数学2025洛谷原创O2优化组合数学排列组合逆元洛谷比赛

「FAOI-R5」Lovely 139

背景

Height≤139\text{Height}\leq139。

题目描述

对于一个 01\tt 01 串 SS(下标从 11 开始),我们定义它的一个区间 [l,r][l,r] 是极长颜色段,当且仅当它同时满足以下条件:

  • 如果 l≠1l\neq 1,Sl−1≠SlS_{l-1}\neq S_l;
  • 如果 r≠∣S∣r\neq \lvert S\rvert,Sr+1≠SrS_{r+1}\neq S_r;
  • ∀i∈[l,r),Si=Si+1\forall i\in[l,r),S_i=S_{i+1}。

定义 g(S)g(S) 为 SS 的不同极长颜色段数。比如 g(00)=1g(00)=1,g(1110)=2g(1110)=2,g(001011)=4g(001011)=4。

定义 f(n,m)f(n,m) 的值为所有恰好包含 n\boldsymbol n 个 0\tt 0 和 m\boldsymbol m 个 1\tt 1 的 01\tt 01 串 SS 的 g(S)g(S) 之和。

你需要回答 TT 个问题,每次给出 n,mn,m 的值,求 f(n,m)f(n,m) 的值对 109+710^9+7 取模后的结果。

输入格式

第一行输入一个正整数数 TT,表示问题个数。

接下来 TT 行,每行两个非负整数 n,mn,m,表示问题的参数。

输出格式

输出 TT 行,每行为对应问题的答案。

3
2 2
4 6
7 8

18
1218
54483

3
845 826
672 826
618 925
789284214
588160420
730993180
1
1 46
139

提示

样例 1 解释

对于第一组数据 n=2,m=2n=2,m=2,一共有六个本质不同的 SS,答案为 $g(0011)+g(0101)+g(0110)+g(1001)+g(1010)+g(1100)=2+4+3+3+4+2=18$。

数据规模与约定

本题采用捆绑测试。

  • Subtask 1(15 pts):0≤n+m≤200 \le n+m \le 20,1≤T≤101 \le T \le 10。
  • Subtask 2(25 pts):0≤n+m≤4×1030 \le n+m \le 4 \times 10^3。
  • Subtask 3(20 pts):1≤T≤101 \le T \le 10。
  • Subtask 4(40 pts):无特殊限制。

对于所有数据,保证 1≤T≤1061 \leq T \leq 10^6,0≤n+m≤2×1060 \leq n+m\leq 2 \times 10^6,0≤n,m≤2×1060\le n,m\le 2\times10^6。