【编程题目 |100分】计算 ID 数量【2021 考试题】


时间限制:C/C++ 1秒,其他语言 2秒

空间限制:C/C++262144K,其他语言524288K

64bit IO Format:%lld


本题可使用本地IDE编码,不能使用本地已有代码,无跳出限制,

编码后请点击”保存并调试“按钮进行代码提交。


题目描述

  • 小华刚刚参加了一个编译器课程,他想设计实现自己的编译器。首先,他设计了一种语言,他的语言最大支持N个字不同的字符,
  • 并且他规定了由这些字符组成的ID,任何ID的长度需要大于等于1且小于等于L个字符,
  • 他希望设计一个程序知道他的语言总共能组成多少个ID。
  • 例如,当N=2(假设字符可以是0或1),并且L=3时,他具有如下的ID:

{0,1,00,01,10,11,000,001,010,011,100,101,110,111},

  • 因此当N=2,L=3时总共有14种ID。
  • 你需要编写一个程序,可以帮助小华找到可能的ID的总数。
  • 由于答案可能非常大,最后的结果需要对1000000007取余。

输入描述

  • 输入包含多个用例。
  • 每个用例将为包含两个整数N和L的一行。N是可以作为id的一部分字符数,L是该语言支持的最大长度。
  • (1 <= N <= 65535,1 0 <= L <= 10^5).
  • 当N=0并且L等于0时表示输入结束。

输出描述

示例1 输入输出示例仅供调试,后台判题数据一般不包含示例

输入

2 3

100 15

0 0

输出

14

979451521


代码实现


C++


剩余50%内容,购买单篇文章或订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看