/ Vijos / 题库 /

理智游行

理智游行

时间限制:1秒  内存限制:256M


【题目描述】

  由于政府不恰当的医疗政策,该国民众决定进行理智游行,和平表达自己的诉求。
  组织者决定选取 \(N\) 个人进行排队游行,其中一些人情绪激动,测算下来,排在第 \(i\) 位的人的理智度为 \(a_i\) ,数字可正可负。
  组织者希望人在抗议时保持理性,为此,他打算将这条队伍分割成几个小组,每个抗议小组的理智度之和必须大于或等于零。队伍已经固定了前后顺序,所以不能交换她们的位置,所以分在一个小组里的人必须是连续位置的。除此之外,分成多少组,每组分多少人,都没有限制。
  那么有多少种分组的方案呢?

【输入格式】

  第一行:单个整数 \(N\)。
  第二行到第 \(N + 1\) 行:第 \(i + 1\) 行有一个整数 \(A_i\)。

【输出格式】

  输出单个整数:表示分组方案数模 1000000009 的余数

【输入输出样例】

 Input

4
2
3
-3
1

 Output

4

【样例说明】

  如果分两组,可以把前三人分在一组,或把后三人分在一组;如果分三组,可以把中间两人分在一组,第一和最后一人自成一组;最后一种分法是把四人分在同一组里。

【数据限制】

  \(100\%\) 的数据满足:\(1 ≤ N ≤ 100000\),\(−10^5 ≤ a i ≤ 10^5\)。

【来源】

  Mr.he

信息

ID
2605
难度
10
分类
动态规划 | 递推 | 数据结构 | 线段树树状数组 点击显示
标签
递交数
1
已通过
0
通过率
0%
被复制
2
上传者