#aBC230F. [ABC230F] Predilection

[ABC230F] Predilection

AT_abc230_f [ABC230F] Predilection

题目描述

给定一个长度为 NN 的数列 AA。当数列长度大于等于 22 时,你可以任意多次进行如下操作:选择一对相邻的数,将它们删除,并在它们原来的位置插入它们的和。请你求出,经过 00 次或多次操作后,可能得到的不同数列有多少种。请将答案对 998244353998244353 取模后输出。

输入格式

输入通过标准输入给出,格式如下:

N A1 A2  ANN\ A_1\ A_2\ \cdots\ A_N

输出格式

输出一个整数,表示可能得到的不同数列的种数。

输入输出样例 #1

输入 #1

3
1 -1 1

输出 #1

4

输入输出样例 #2

输入 #2

10
377914575 -275478149 0 -444175904 719654053 -254224494 -123690081 377914575 -254224494 -21253655

输出 #2

321

说明/提示

限制条件

  • 1N2×1051 \leq N \leq 2 \times 10^5
  • Ai109|A_i| \leq 10^9
  • 输入均为整数

样例解释 1

经过 00 次或多次操作后,可能得到的数列如下共 44 种:

  • {1,1,1}\{1, -1, 1\}
  • {1,0}\{1, 0\}
  • {0,1}\{0, 1\}
  • {1}\{1\}

由 ChatGPT 4.1 翻译