A94844.彩色球
普及+/提高
通过率:0%
时间限制:1.00s
内存限制:1024MB
题目描述
有 n 种不同颜色的球,第 i 种颜色的球有 ai 个。
这些球可以被组合成若干组。每组遵循以下规则:
- 每组最多包含 2 个球。
- 每组中每种颜色的球最多只能有 1 个(即如果一组有两个球,它们必须是不同颜色的)。
考虑所有 2n 种颜色集合(即从 n 种颜色中选取任意子集)。对于某个颜色集合,定义其值为:仅使用属于该集合颜色的所有球,能分成的最少组数。
例如,若选中了三种颜色,球的数量分别为 3、1 和 7,则这些球最少能组合成 7 组(因为数量为 7 的那种颜色的球,哪怕和其他所有球配对,剩下的也必须单独一组),所以该颜色集合的值为 7。
你的任务是计算所有 2n 种颜色集合的值之和。由于答案可能很大,请输出其对 998244353 取模的结果。
输入格式
第一行包含一个整数 n,表示颜色的数量。
第二行包含 n 个整数 a1,a2,…,an,表示第 i 种颜色的球的数量。
输出格式
输出一个整数,表示所有 2n 种颜色集合的值之和,对 998244353 取模。
输入输出样例
输入#1
3 1 1 2
输出#1
11
输入#2
1 5
输出#2
5
输入#3
4 1 3 3 7
输出#3
76
说明/提示
样例解释 1
共有 8 个颜色集合:
- 空集,值为 0;
- 集合 {1},值为 1;
- 集合 {2},值为 1;
- 集合 {3},值为 2;
- 集合 {1,2},值为 1;
- 集合 {1,3},值为 2;
- 集合 {2,3},值为 2;
- 集合 {1,2,3},值为 2。
因此,所有 2n 种颜色集合的值之和为 11。
数据范围
- 1≤n≤5000
- 1≤ai≤5000
- 额外限制:所有球的总数不超过 5000(即 ∑ai≤5000)。