CF1213A.Chips Moving

传统题 时间 2000 ms 内存 256 MiB 4 尝试 1 已通过 1 标签

Chips Moving

题目描述

在数轴上有 nn 个筹码,第 ii 个筹码位于整数坐标 xix_i。有些筹码可能处于相同的坐标。

你可以对任意一个筹码执行以下两种操作中的任意一种(可以执行任意多次,包括零次):

  • 将第 ii 个筹码向左或向右移动 22 个单位,免费(即将当前坐标 xix_i 替换为 xi2x_i - 2xi+2x_i + 2);
  • 将第 ii 个筹码向左或向右移动 11 个单位,需支付 11 个硬币(即将当前坐标 xix_i 替换为 xi1x_i - 1xi+1x_i + 1)。

注意,允许将筹码移动到任意整数坐标,包括负数和零。

你的任务是计算,将所有 nn 个筹码移动到同一坐标所需支付的最少硬币数(即经过若干次操作后,所有 xix_i 都相等时所需的最小硬币数)。

输入格式

输入的第一行包含一个整数 nn1n1001 \le n \le 100),表示筹码的数量。

第二行包含 nn 个整数 x1,x2,,xnx_1, x_2, \dots, x_n1xi1091 \le x_i \le 10^9),其中 xix_i 表示第 ii 个筹码的坐标。

输出格式

输出一个整数,表示将所有 nn 个筹码移动到同一坐标所需支付的最少硬币数。

说明/提示

在第一个样例中,你需要将第一个筹码向右移动 22 个单位,将第二个筹码向右移动 11 个单位,或者将第三个筹码向左移动 22 个单位,将第二个筹码向左移动 11 个单位,因此答案为 11

在第二个样例中,你需要将两个坐标为 33 的筹码分别向左移动 11 个单位,因此答案为 22

由 ChatGPT 4.1 翻译

样例

3
1 2 3
1
5
2 2 2 3 3
2

在线编程 IDE

建议全屏模式获得最佳体验