AT_ndpc2026_k 加算と減算

题目描述

给定一个长度为 $N$ 的整数序列 $A = (A_1, A_2, \dots, A_N)$。 你还有一个整数 $x$,初始值为 $0$。 你将进行以下 $N$ 次操作: - 对于 $i = 1, 2, \dots, N$,每次恰好从以下三种操作中选择一种: - 用 $x + A_i$ 替换 $x$。 - 用 $|x - A_i|$ 替换 $x$。 - 什么都不做。 请你输出在完成全部 $N$ 次操作后,$x$ 可能的取值个数。

输入格式

输入从标准输入给出,格式如下: >$N$ $A_1$ $A_2$ $\dots$ $A_N$

输出格式

输出一个整数,表示 $x$ 在所有操作完成后可能的取值个数。

说明/提示

## 部分分 本题存在部分分。 - 如果你能够解决满足 $1 \leq \sum_{i=1}^N A_i \leq 5 \times 10^5$ 的数据,你可以获得 $4$ 分。 ## 样例解释 1 例如,你可以通过如下操作得到 $x = 9$: - 初始时,$x = 0$。 - 第 $i=1$ 次,用 $|x - A_i| = |0 - 2| = 2$ 替换 $x$。 - 第 $i=2$ 次,用 $x + A_i = 2 + 7 = 9$ 替换 $x$。 - 第 $i=3$ 次,什么都不做。 # 约束条件 - $1 \leq N \leq 5 \times 10^5$ - $1 \leq A_i \leq 2 \times 10^6$ - $1 \leq \sum_{i=1}^N A_i \leq 2 \times 10^6$ - 所有输入均为整数。 由 ChatGPT 5 翻译