#630. 平衡下标
平衡下标
平衡下标
故事背景
你在搭建一条展示长廊,两侧摆放的装饰品重量需要尽量保持平衡。对于一排物品,如果某个位置作为“支点”,支点左侧的总重量恰好等于右侧的总重量,那么这个位置就是理想的平衡点。请找出所有这样的平衡位置,便于选择最佳支点。
题目描述
给定一个长度为 n 的整数数组 a。如果某个位置 i(1 ≤ i ≤ n)满足:其左侧元素之和等于右侧元素之和,即
sum(a[1..i-1]) = sum(a[i+1..n]),
则称 i 为“平衡下标”。请你找出所有平衡下标。
输入格式
第一行包含一个整数 n,表示数组长度。 第二行包含 n 个整数,表示数组 a 的元素。
输出格式
第一行输出一个整数 k,表示平衡下标的个数。 如果 k > 0,则第二行输出 k 个递增的下标(1 基),用空格分隔。
输入输出样例 #1
输入 #1
5
1 2 3 1 2
输出 #1
1
3
样例解释 #1
下标 3 左侧之和为 1+2=3,右侧之和为 1+2=3,相等。
说明/提示
- 数据范围:1 ≤ n ≤ 2×10^5;-10^9 ≤ a_i ≤ 10^9。