CF488B Candy Boxes

题目描述

在赛博之国有一个古老的传统,家中会保存 $4$ 盒糖果。如果这 $4$ 个盒子中糖果数满足它们的算术平均数、中位数和极差均相等,这组数字就非常特殊。具体来说,对于一组 $ \{x_1, x_2, x_3, x_4\} $ (且 $x_1 \leq x_2 \leq x_3 \leq x_4$),其算术平均数为 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF488B/4ced3a9ae4181924c136bcc46ede19844528fdef.png) 中位数为 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF488B/2d7e14bfd580007a1d694763c07f2437bb7e66e6.png) 极差为 $x_4 - x_1$。算术平均数和中位数不一定为整数。众所周知,如果这三个数相同,那么这些盒子就会生成一个“debug 场”,该场域内的代码将不会有 bug。 例如,$1,1,3,3$ 就是满足条件的一个例子,因为它们的平均数、中位数和极差都等于 $2$。 Jeff 曾经拥有 $4$ 个特殊的糖果盒。可是发生了不幸!有些盒子丢失了,现在只剩下 $n$ 个($0 \leq n \leq 4$),第 $i$ 个剩下的盒子有 $a_i$ 颗糖果。 Jeff 现在想知道:是否存在一种方案,能够补全丢失的 $4-n$ 个盒子的糖果数,使得最终这 $4$ 个糖果盒的数字满足上述条件(平均数、中位数和极差相等)?

输入格式

输入为 $n$ 和 $a_1, a_2, \dots, a_n$。$0 \leq n \leq 4$,$a_i$ 表示第 $i$ 个剩余盒子中的糖果数。

输出格式

如果有解,第一行输出 "YES"。第二行输出 $4-n$ 个整数,表示每个丢失盒子的糖果数(输出顺序不限)。 如果无解,输出 "NO"。

说明/提示

对于第一个样例,$4$ 个糖果盒的数量可以是 $1,1,3,3$,它们的平均数、中位数和极差都是 $2$。 对于第二个样例,不可能找到符合要求的丢失糖果数量。 在第三个样例中,所有盒子都在且数字满足条件。 你可以按任意顺序输出 $b$。 由 ChatGPT 5 翻译