20051 - 高维正方体

通过次数

1

提交次数

1

时间限制 : 1 秒
内存限制 : 128 MB

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

  • 20 维空间的元素可以围成一个 1 维空间的元素,线段。
  • 41 维空间的元素可以围成一个 2 维空间的元素,正方形。
  • 62 维空间的元素可以围成一个 3 维空间的元素,正方体。
  • 83 维空间的元素可以围成一个 4 维空间的元素,超正方体。

……

  • 一个正方形中,有 4 个(顶)点,4 条线段(边),1 个正方形。
  • 一个正方体中,有 8 个(顶)点,12 条线段(棱),6 个正方形(面),1 个正方体。

……

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

输入

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

输出

一个整数,即答案。

样例

输入

3 1

输出

12

提示

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

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

此外,对于 15\% 的数据,b=0,对于各 10\% 的数据,b=1b=2。 不保证 a \ge b