首页 > 学院 > 开发设计 > 正文

HDU - 2083 - 简易版之最短距离

2019-11-08 03:05:10
字体:
来源:转载
供稿:网友

HDU - 2083 - 简易版之最短距离

大水题

题目

哦美国

解题过程

先是一愣;后来发现是中位数;直接sort排序后,取中间数再与其他数的差求和就行了。

Ac代码

// 2083 - 简易版之最短距离 int main() { const int maxn = 505; int M, N, sum, x, num[maxn]; cin >> M; while (M--) { cin >> N; memset(num, 0, sizeof(num)); sum = 0; for (int i = 0; i < N; i++) { cin >> num[i]; } // 排序 + 寻找中位数 sort(num, num + N); x = num[N / 2]; for (int i = 0; i < N; i++) { sum += abs(num[i] - x); } cout << sum << endl; } return 0;}

小结

就一点,别把初高中学的数学小知识全忘了就好!
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表