专栏文章

题解:P13080 [NOISG 2017] Best Places / 最佳选址

P13080题解参与者 2已保存评论 2

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
2 条
当前快照
1 份
快照标识符
@mioza7iu
此快照首次捕获于
2025/12/03 03:35
3 个月前
此快照最后确认于
2025/12/03 03:35
3 个月前
查看原文

题解:P13080 [NOISG 2017] Best Places / 最佳选址

思路:

对于一维数轴上的坐标,使所有点到该点的距离之和最小的点是该点集的中位数。因此,最优 XX 坐标是所有选手 XiX_i 的中位数,最优 YY 坐标是所有选手 YiY_i 的中位数。
求中位数时,排序,再取中间数即可。

AC Code:

CPP
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
int x[N],y[N],n;
int main() {
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>x[i]>>y[i];
    }
    sort(x+1,x+1+n);//排序求中位数
    sort(y+1,y+1+n);
    cout<<x[n/2+1]<<" "<<y[n/2+1];//下标从一开始,所以要+1
    return 0;
}

评论

2 条评论,欢迎与作者交流。

正在加载评论...