解题思路:一个正数排序
一个倒数排序
一一配对减
大的减小的
注意事项:
参考代码:
# include<iostream>
# include<vector>
# include<algorithm>
using namespace std;
int main()
{
int n;
cin >> n;
vector<int> a;
vector<int> b;
for (int i = 0; i < n; i++)
{
int q;
cin >> q;
a.push_back(q);
}
for (int i = 0; i < n; i++)
{
int q;
cin >> q;
b.push_back(q);
}
sort(a.begin(), a.end());
sort(b.begin(), b.end(), greater<int>());
int sum = 0;
for (vector<int>::iterator it = a.begin(), itb = b.begin(); it != a.end(), itb != b.end(); it++, itb++)
{
if (*it > *itb)
{
sum += *it - *itb;
}
else
{
sum += *itb - *it;
}
}
cout << sum << endl;
return 0;
}
0.0分
1 人评分
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:1008 |
大神老白 (C语言代码)浏览:640 |
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:504 |
C语言程序设计教程(第三版)课后习题6.5 (C语言代码)浏览:587 |
字符逆序 (C语言代码)浏览:636 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:668 |
1025题解浏览:732 |
模拟计算器 (C++代码)浏览:800 |
简单的a+b (C语言代码)浏览:524 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:505 |