由于有括号,正可变负,负可变正。更实际的正负没有什么关系
结果为,最大的数加上(最小的数的相反数)加上其他数的绝对值
#include <bitsdc++.h>
typedef long long ll;
using namespace std;
int main() {
int n, m;
cin >> n >> m;
vector<int>a(n + m + 1);
for (int i = 0; i < n + m + 1; i++) cin >> a[i];
if (!m) cout << accumulate(a.begin(), a.end(), 0ll) << '\n';//累加函数accumulate
else {
sort(a.begin(), a.end());
ll ans = -a.front() + a.back();
for (int i = 1; i < n + m; i++) ans += abs(a[i]);
cout << ans << '\n';
}
return 0;
}