ACdream 1735 输油管道 (排序)

时间:2023-03-09 16:31:31
ACdream 1735  输油管道 (排序)

http://acdream.info/problem?pid=1735

官方题解:http://acdream.info/topic?tid=4246

因为主干线是平行于x轴的直线,那么跟x坐标其实没关系,考虑两个点时直线是位于两点的中部,三个点时有一个点会位于直线上,那么,奇数个点是一定有一个点位于直线上的,偶数个点的话是位于两个点的中心。

输入之后对y排序输出即可。

 #include <cstdio>
#include <algorithm>
using namespace std;
const int N = ;
int b[N];
int main()
{
int n,a;
scanf("%d",&n);
for(int i=;i<n;i++)
scanf("%d%d",&a,&b[i]);
sort(b,b+n);
long long ans=;
for(int i=;i<n/;i++)
{
ans+=b[n-i-]-b[i];
}
printf("%lld\n",ans);
return ;
}