#A0106. 切绳子

切绳子

题目描述

Bob 最近对切绳子问题很感兴趣,一根绳子对折 11 次,从中间切 11 刀,绳子会变成 33 段。如果对折 22 次,从中间切 11 刀绳子变为 55 段,如果切 22 刀,绳子会变为 99 段。

依次类推,一根绳子对折 nn 次,从中间切 kk 刀,最后会有多少段? 答案取 109+710^9+7 的余数。

输入格式

两个整数 nn kk

输出格式

一个整数,表示对折 nn 次切 kk 刀绳子的段数取 109+710^9+7 的余数。

1 1
3
2 2
9
10 3
3073
0 3
4
100000 3
823170554

数据规模与约定

Subtask1Subtask1: 0n,k200\le n,k \le 20 , 2020

Subtask2Subtask2: 0n,k1050\le n,k \le 10^5 , 4040

Subtask3Subtask3: 0n,k10180\le n,k \le 10^{18} , 4040