#ATagc021f. [AGC021F] Trinity
[AGC021F] Trinity
题目描述
有一个纵向 行、横向 列的网格。我们用 表示第 行第 列的格子。特别地,最左上角的格子为 ,最右下角的格子为 。高桥君将若干(可以为 个)格子涂成黑色,其余格子为白色。
定义长度为 的数列 ,长度为 的数列 和 ,如下所示:
- :第 行中被涂黑的格子的最小列号 (如果不存在,则为 )。
- :第 列中被涂黑的格子的最小行号 (如果不存在,则为 )。
- :第 列中被涂黑的格子的最大行号 (如果不存在,则为 )。
请计算所有可能的三元组 的数量,并对 取模后输出。
输入格式
输入为一行,包含两个整数 和 。
输出格式
输出所有可能的 组数对 取模的结果。
样例 1
输入
2 3
输出
64
样例 2
输入
4 3
输出
2588
样例 3
输入
17 13
输出
229876268
样例 4
输入
5000 100
输出
57613837
说明/提示
注意
本题提交的源代码大小限制为 字节。超出该长度的提交将被判为无效,请注意。
数据范围
- 均为整数
部分分
- 对于满足 的数据集,答对可得 分。
样例说明 1
当 时,可以由 的信息唯一确定每一列黑色格子的分布。对于每个 , 的组合有 共 种,因此答案为 种。
由 ChatGPT 4.1 翻译