标签:
水题,小白练手。
想法:即是最近距离,并且只允许走直线,x和y方向上就没太大关系,那就只考虑一维就够了,一维到一个点距离最近,2n个点中找一个最近距离,应该是二分点集任意区域都可以,这点可以用样例来证明下,两次找中心即得坐标;
代码:
#include <iostream> #include <stdio.h> #include <algorithm> using namespace std; const int MAXN = 1000000+88; #define ll long long double a[MAXN],b[MAXN]; int main() { ll t; while(cin>>t&&t) { for(int i=0;i<t;i++) { scanf("%lf%lf",&a[i],&b[i]); } sort(a,a+t); sort(b,b+t); printf("%.2f %.2f\n",(double)a[t/2+t%2-1],(double)b[t/2+t%2]); } return 0; }
启示:二维的东西假如从某种意义上没有关系,就能变一维操作;
标签:
原文地址:http://www.cnblogs.com/aishuijdemiaomiao/p/5761600.html