CF1516C Baby Ehab Partitions Again

题目描述

小 Ehab 正在玩数组。他有一个长度为 $n$ 的数组 $a$。他定义一个数组是“好”的,如果不存在一种方式可以将其划分为 $2$ 个子序列,使得第一个子序列中元素的和等于第二个子序列中元素的和。现在他想要移除数组 $a$ 中最少数量的元素,使其变成一个“好”数组。你能帮帮他吗? 一个序列 $b$ 是数组 $a$ 的子序列,如果 $b$ 可以通过从 $a$ 中删除一些(可能为零或全部)元素得到。数组的划分是将其分成 $2$ 个子序列的方式,使得每个元素恰好属于一个子序列,也就是说你必须使用所有元素,且不能有元素被重复使用。

输入格式

第一行包含一个整数 $n$($2 \le n \le 100$),表示数组 $a$ 的长度。 第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$($1 \le a_i \le 2000$),表示数组 $a$ 的元素。

输出格式

第一行输出你需要移除的最少元素数量。 第二行输出你要移除的元素的下标,使用空格分隔。 可以证明一定存在解。如果有多种方案,你可以输出任意一种。

说明/提示

在第一个样例中,你可以将数组划分为 $[6,9]$ 和 $[3,12]$,因此你至少需要移除 $1$ 个元素。移除 $3$ 就足够了。 在第二个样例中,数组已经是“好”的,因此你不需要移除任何元素。 由 ChatGPT 4.1 翻译