#5311. 多边形

    ID: 5311 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: 3 上传者: 标签>动态规划csp-j-2025背包dpdp多重背包普及/提高−

多边形

多边形

题目描述

小 R 喜欢玩小木棍。小 R 有 nn 根小木棍,第 ii1in1 \leq i \leq n)根小木棍的长度为 aia_i

小 X 希望小 R 从这 nn 根小木棍中选出若干根小木棍,将它们按任意顺序首尾相连拼成一个多边形。小 R 并不知道小木棍能拼成多边形的条件,于是小 X 直接将条件告诉了他:对于长度分别为 l1,l2,,lml_1,l_2,\dots,l_mmm 根小木棍,这 mm 根小木棍能拼成一个多边形当且仅当 m3m \geq 3 且所有小木棍的长度之和大于所有小木棍的长度最大值的两倍,即 i=1mli>2×maxi=1mli\sum_{i=1}^{m} l_i > 2 \times \max_{i=1}^{m} l_i

由于小 R 知道了小木棍能拼成多边形的条件,小 X 提出了一个更难的问题:有多少种选择小木棍的方案,使得选出的小木棍能够拼成一个多边形?你需要帮助小 R 求出选出的小木棍能够拼成一个多边形的方案数。

两种方案不同当且仅当选择的小木棍的下标集合不同,即存在 1in1 \leq i \leq n,使得其中一种方案选择了第 ii 根小木棍,但另一种方案未选择。

由于答案可能较大,你只需要求出答案对 998244353998244353 取模后的结果。

输入格式

输入的第一行包含一个正整数 nn,表示小 R 的小木棍的数量。

输入的第二行包含 nn 个正整数 a1,a2,,ana_1,a_2,\dots,a_n,表示小 R 的小木棍的长度。

输出格式

输出一行一个非负整数,表示小 R 选出的小木棍能够拼成一个多边形的方案数对 998244353998244353 取模后的结果。

样例 #1

5
1 2 3 4 5
9

样例 #2

5
2 2 3 8 10
6

样例解释

样例 1 解释

共有以下 99 种选择小木棍的方案,使得选出的小木棍能够拼成一个多边形:

  1. 选择第 2,3,42,3,4 根小木棍,长度之和为 2+3+4=92+3+4=9,长度最大值为 44
  2. 选择第 2,4,52,4,5 根小木棍,长度之和为 2+4+5=112+4+5=11,长度最大值为 55
  3. 选择第 3,4,53,4,5 根小木棍,长度之和为 3+4+5=123+4+5=12,长度最大值为 55
  4. 选择第 1,2,3,41,2,3,4 根小木棍,长度之和为 1+2+3+4=101+2+3+4=10,长度最大值为 44
  5. 选择第 1,2,3,51,2,3,5 根小木棍,长度之和为 1+2+3+5=111+2+3+5=11,长度最大值为 55
  6. 选择第 1,2,4,51,2,4,5 根小木棍,长度之和为 1+2+4+5=121+2+4+5=12,长度最大值为 55
  7. 选择第 1,3,4,51,3,4,5 根小木棍,长度之和为 1+3+4+5=131+3+4+5=13,长度最大值为 55
  8. 选择第 2,3,4,52,3,4,5 根小木棍,长度之和为 2+3+4+5=142+3+4+5=14,长度最大值为 55
  9. 选择第 1,2,3,4,51,2,3,4,5 根小木棍,长度之和为 1+2+3+4+5=151+2+3+4+5=15,长度最大值为 55

样例 2 解释

共有以下 66 种选择小木棍的方案,使得选出的小木棍能够拼成一个多边形:

  1. 选择第 1,2,31,2,3 根小木棍,长度之和为 2+2+3=72+2+3=7,长度最大值为 33
  2. 选择第 3,4,53,4,5 根小木棍,长度之和为 3+8+10=213+8+10=21,长度最大值为 1010
  3. 选择第 1,2,4,51,2,4,5 根小木棍,长度之和为 2+2+8+10=222+2+8+10=22,长度最大值为 1010
  4. 选择第 1,3,4,51,3,4,5 根小木棍,长度之和为 2+3+8+10=232+3+8+10=23,长度最大值为 1010
  5. 选择第 2,3,4,52,3,4,5 根小木棍,长度之和为 2+3+8+10=232+3+8+10=23,长度最大值为 1010
  6. 选择第 1,2,3,4,51,2,3,4,5 根小木棍,长度之和为 2+2+3+8+10=252+2+3+8+10=25,长度最大值为 1010

数据范围

对于所有测试数据,保证:

  • 3n50003 \leq n \leq 5000
  • 对于所有 1in1 \leq i \leq n,均有 1ai50001 \leq a_i \leq 5000
测试点编号 nn \leq maxi=1nai\max_{i=1}^{n} a_i \leq
131 \sim 3 33 1010
464 \sim 6 1010 10210^2
7107 \sim 10 2020
111411 \sim 14 500500
151715 \sim 17 50005000 11
182018 \sim 20 10210^2
212521 \sim 25 50005000