我的题解有丰富的注释!!!
2026-07-09 13:39:16
发布于:浙江
6阅读
0回复
0点赞
#include <iostream>
#include <vector>
#include <algorithm>
#include <cmath>
using namespace std;
int main() {
int n;
cin >> n;
vector<int> a(n);
for (int i = 0; i < n; i++) {
cin >> a[i];
}
// 步骤:排序
sort(a.begin(), a.end());
// 步骤:取中位数(下标 n/2 对应第 (n+1)/2 小的数,适用于奇偶)
int median = a[n / 2]; // ✅ 这种写法对奇偶均适用(为什么?试试看!)
// 步骤:计算总代价
long long cost = 0; // 注意:可能达到 10^7,int 可能溢出
for (int x : a) {
cost += abs(x - median);
}
cout << cost << endl;
return 0;
}
全部评论 1
en ,good噢!!!
5天前 来自 浙江
0





有帮助,赞一个