题目链接
解题思路:
要求两类人群的规模尽可能接近,而他们的总活跃度差距尽可能拉开。
题目要求规模尽可能近 差值还要尽可能拉开 就sort一下 对半分就好了
代码如下:
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
typedef long long ll;
const int maxn=1e5+10;
ll a[maxn];
int main()
{
int n,i,j,k;
ll ans=0;
ll sum=0;
cin>>n;
for(i=1;i<=n;i++)
{
cin>>a[i];
sum+=a[i];
}
sort(a+1,a+1+n);
for(i=1;i<=n/2;i++)
ans+=a[i];
cout<<"Outgoing #: "<<n-n/2<<endl;
cout<<"Introverted #: "<<n/2<<endl;
cout<<"Diff = "<<sum-2*ans<<endl;
return 0;
}