#aBC281EX. [ABC281Ex] Alchemy

[ABC281Ex] Alchemy

AT_abc281_h [ABC281Ex] Alchemy

题目描述

高桥君拥有 AA 种“等级 11 的宝石”,每种宝石各有 101010010^{10^{100}} 个。 此外,对于任意整数 n2n \geq 2,如果将满足以下所有条件的 nn 个宝石放入锅中,可以合成 11 个“等级 nn 的宝石”。

  • 任意两颗宝石的种类都不同。
  • 所有宝石的等级都小于 nn
  • 对于任意整数 x2x \geq 2,锅中“等级 xx 的宝石”最多只有 11 个。

请计算高桥君最多能获得多少种“等级 NN 的宝石”,并对 998244353998244353 取模。

此外,等级 22 及以上的宝石,如果它们在合成时所用的宝石集合完全相同,则视为同一种。 这里,两个宝石集合只要存在某种宝石只属于其中一个集合,就认为这两个集合不同。

另外,任意“等级 11 的宝石”与任意等级 22 及以上的宝石都属于不同种类。

输入格式

输入从标准输入中给出,格式如下:

NN AA

输出格式

输出答案。

输入输出样例 #1

输入 #1

3 3

输出 #1

10

输入输出样例 #2

输入 #2

1 100

输出 #2

100

输入输出样例 #3

输入 #3

200000 1000000000

输出 #3

797585162

说明/提示

约束条件

  • 1N2×1051 \leq N \leq 2 \times 10^5
  • 1A1091 \leq A \leq 10^9
  • N,AN, A 均为整数

样例解释 1

获得 1010 种“等级 33 的宝石”的方法如下:

  • 33 种“等级 11 的宝石”放入锅中。
    • 高桥君有 33 种“等级 11 的宝石”,选择 33 种的方式有 11 种。因此,这种方法能获得 11 种“等级 33 的宝石”。
  • 11 种“等级 22 的宝石”和 22 种“等级 11 的宝石”放入锅中。
    • “等级 22 的宝石”可以通过将 22 种“等级 11 的宝石”放入锅中获得。
    • 高桥君有 33 种“等级 11 的宝石”,选择 22 种的方式有 33 种。因此,作为“等级 22 的宝石”有 33 种。
    • 作为“等级 22 的宝石”有 33 种,选择 22 种“等级 11 的宝石”的方式有 33 种,因此这种方法能获得 3×3=93 \times 3 = 9 种“等级 33 的宝石”。

由 ChatGPT 4.1 翻译