首页 > 试题广场 >

小红的数组操作

[编程题]小红的数组操作
  • 热度指数:137 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
小红拿到了一个数组,她准备对这个数组进行如下两种操作:
1. 删除数组的第一个元素。该操作的花费为x
2. 使得数组中任意一个元素加 1 或者减 1。该操作的花费为y

小红希望用尽可能少的花费使得数组所有元素都相等,请你帮小红求出最小的花费。

输入描述:
第一行输入三个正整数n,x,y,代表数组的大小以及两种操作的花费。
第二行输入n个正整数a_i,代表数组的元素。
1\leq n \leq 10^5
1\leq a_i,x,y \leq 10^9
保证 40% 的数据满足 1 \leq n \leq 1000


输出描述:
一个整数,代表将所有元素变成相等的最小总花费。

示例1

输入

5 2 1
10 1 4 2 3

输出

6

说明

删除前两个元素,共花费 4。然后对第三个元素减 1,对第四个元素加 1 即可。
头像 Silencer76
发表于 2025-04-02 14:38:17
题目链接 小红的数组操作 题目描述 小红拿到了一个数组,她准备对这个数组进行如下两种操作: 删除数组的第一个元素。该操作的花费为 。 使得数组中任意一个元素加 1 或者减 1。该操作的花费为 。 小红希望用尽可能少的花费使得数组所有元素都相等,请你帮小红求出最小的花费。 输入: 第一行输入三个 展开全文
头像 丨阿伟丨
发表于 2025-09-16 17:16:51
题目链接 小红的数组操作 题目描述 给定一个数组,有两种操作: 删除数组的第一个元素,花费为 。 使数组中任意一个元素加 1 或减 1,花费为 。 目标是使用尽可能少的花费使得数组中所有剩余元素都相等。求最小总花费。 解题思路 这是一个需要结合枚举和数据结构优化的题目。总花费由“删除花费”和“修 展开全文