#ARC160C. 能量合并

    ID: 1631 传统题 2000ms 1024MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>普及+/提高−动态规划前缀和状态合并

能量合并

能量合并

时间限制:2s
空间限制:1024MB

题目描述

给定一个含有 NN 个正整数的多重集合 A={A1,A2,…,AN}A=\{A_1,A_2,\ldots,A_N\}。你可以进行任意次下列操作(也可以一次都不做):选择在 AA 中至少出现两次的正整数 xx,删去两个 xx,再加入一个 x+1x+1。

求最终可能得到的不同多重集合数量,对 998244353998244353 取模。

输入格式

N
A_1 A_2 ... A_N

输出格式

输出答案对 998244353998244353 取模后的结果。

样例输入 1

4
1 1 2 4

样例输出 1

3

样例输入 2

5
1 2 3 4 5

样例输出 2

1

样例输入 3

13
3 1 4 1 5 9 2 6 5 3 5 8 9

样例输出 3

66

数据范围

  • 1≤N≤2×1051\le N\le2\times10^5;
  • 1≤Ai≤2×1051\le A_i\le2\times10^5。
子任务编号 分值 特殊限制
1 12 N≤10N\le10,且 Ai≤10A_i\le10
2 22 N≤70N\le70,且 Ai≤70A_i\le70
3 36 N≤2000N\le2000,且 Ai≤2000A_i\le2000
4 30 无特殊限制