#653. 十六届蓝桥杯B组第三题
十六届蓝桥杯B组第三题
连续整数和的可分解性判断
问题描述
定义一种特殊的整数序列,满足以下条件:
- 序列长度至少为
3; - 序列中的数字为连续递增的整数,即相邻元素之差为
1; - 序列中的整数可以是正整数、负整数或
0。
例如:
[1, 2, 3][4, 5, 6, 7][-1, 0, 1]
都是符合条件的序列;
而:
[1, 2](长度不足)[1, 2, 4](不连续)
不符合要求。
现给定一组包含 N 个正整数的数据 A_1, A_2, …, A_N。
如果某个整数 A_i 能够表示为某个符合上述条件的连续整数序列中所有元素之和,则称 A_i 是可分解的。
请你统计这组数据中可分解的正整数的数量。
输入格式
- 第一行包含一个正整数
N,表示数据的个数; - 第二行包含
N个正整数A_1, A_2, …, A_N,表示需要判断的整数。
输出格式
输出一个整数,表示给定数据中可分解的正整数的数量。
样例输入
3
3 6 15
样例输出
3
样例说明
A_i = 3是可分解的,因为序列[0, 1, 2]的和为0 + 1 + 2 = 3;A_i = 6是可分解的,因为序列[1, 2, 3]的和为1 + 2 + 3 = 6;A_i = 15是可分解的,因为序列[4, 5, 6]的和为4 + 5 + 6 = 15。
因此,可分解的正整数数量为 3。
评测用例规模与约定
- 对于
30%的评测用例:1 ≤ N ≤ 100,1 ≤ A_i ≤ 100; - 对于所有评测用例:
1 ≤ N ≤ 10^5,1 ≤ A_i ≤ 10^9。