#P1999. 高维正方体

高维正方体

题目描述

00 维空间的元素是点,这个毋庸置疑。

  • 2200 维空间的元素可以围成一个 11 维空间的元素,线段。
  • 4411 维空间的元素可以围成一个 22 维空间的元素,正方形。
  • 6622 维空间的元素可以围成一个 33 维空间的元素,正方体。
  • 8833 维空间的元素可以围成一个 44 维空间的元素,超正方体。

……

  • 一个正方形中,有 44 个(顶)点,44 条线段(边),11 个正方形。
  • 一个正方体中,有 88 个(顶)点,1212 条线段(棱),66 个正方形(面),11 个正方体。

……

我们的问题是:给出 aabb,请求出:在 aa 维空间的元素中,包含着多少个 bb 维空间的元素。答案可能很大,只需要输出它除以 109+710^9+7 的余数。

输入格式

两个整数 a,ba,b,以空格隔开。

输出格式

一个整数,即答案。

3 1
12

提示

样例解释

33 维空间的元素是正方体,11 维空间的元素是线段。所求即是一个正方体中棱的数量,为 1212

数据范围及约定

  • 对于 5%5\% 的数据,a,b1a,b \le 1
  • 对于 10%10\% 的数据,a,b2a,b \le 2
  • 对于 20%20\% 的数据,a,b3a,b \le 3
  • 对于 35%35\% 的数据,a,b4a,b \le 4
  • 对于 70%70\% 的数据,a,b1000a,b \le 1000
  • 对于 100%100\% 的数据,0a,b1000000\le a,b \le 100000

此外,对于 15%15\% 的数据,b=0b=0,对于各 10%10\% 的数据,b=1b=1b=2b=2

提示

不保证 aba \ge b