CF931C Laboratory Work

题目描述

$Anya$ 和 $Kirill$ 正在做一个物理实验,他们必须测量一些值 $n$ 次,然后求出平均值以降低误差。 $Kirill$ 已经完成了测量,得到了 $n$ 个数据:$x_1,x_2,\dots,x_n$。这些值非常接近,其中的最大值与最小值之差不超过 $2$。 $Anya$ 不想去测量,但是他也不能直接抄 $Kirill$ 的数据,因为每次测量的误差是随机的,如果直接抄的话会被老师发现。$Anya$ 想要得到一组数据 $y_1,y_2,\dots,y_n$ ,这组数据满足如下条件: * $x_1,x_2,\dots,x_n$ 的平均值要等于 $y_1,y_2,\dots,y_n$ 的平均值。 * $\max(y_1,y_2,\dots,y_n) \le \max(x_1,x_2,\dots,x_n)$ 并且 $\min(y_1,y_2,\dots,y_n) \ge \min(x_1,x_2,\dots,x_n)$。 * 两组数据中相等的数尽可能少,即你造的数据中尽量不要出现 $Kirill$ 的数据中出现过的数。 找出这样的一组测量值。

输入格式

第一行有一个整数 $n \ (1 \le n \le 100000)$,所需数据的个数。 第二行 $n$ 个整数 $x_1,x_2,\dots,x_n \ (-100000 \le x_i \le 100000)$,表示 $Kirill$ 的测量值,保证其中的最大值与最小值之差不超过 $2$。

输出格式

第一行输出 $Anya$ 的测量值与 $Kirill$ 的测量值中最少的相同的个数。 输出你造的 $y_1,y_2,\dots,y_n$。要满足题目中的条件。 多种可能只需要输出一种。

说明/提示

$1 \le n \le 100000$。 $-100000 \le x_i \le 100000$ [样例解释] 第一个样例中,$0,0,0,0,0,0$ 与 $-1,1,1,0,0,-1$ 的平均值相等,只有两个相等的 $0$。 第二个样例中,要想使平均值相等,$Anya$ 的测量值只能与 $Kirill$ 的测量值相等。 第三个样例中,最少也要有 $5$ 个相等的数。 translated by [yu__xuan](https://www.luogu.com.cn/user/142110).