我们要求的是“按数值区分”的 LIS(最长上升子序列)的条数:同一数值序列只算 1 次,即使出现位置不同。 关键观察:
把数组中每个不同的数值当作一个节点 v。设
给定一个长度为n的数组a,请你计算其中所有本质不同最长上升子序列的数量。由于答案可能非常大,请将结果对998244353取模后输出。
**[子序列]**如果一个序列可以通过删除原序列的若干(可能为零)元素得到,则称前者为后者的一个子序列。
**[上升序列]**我们称s为一个上升序列,当且仅当其中任意相邻元素满足si<si+1
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册