zoukankan      html  css  js  c++  java
  • 8F

    某天gameboy玩魔兽RPG。有一个任务是在一个富含金矿的圆形小岛上建一个基地,以最快的速度采集完这个小岛上的所有金矿。这个小岛上有n(0<n<1000000)个金矿,每个金矿的矿藏量是相等的。而且这个小岛的地势非常平坦,所以基地可以建在小岛的任何位置,每个金矿的采矿速度只跟矿藏到基地的路程长度有关。为了不让这个任务太无聊,游戏设计者对这个小岛施了个“魔法”,规定矿工在小岛上只能正南正北正西正东走。也就是说矿工不能斜着在岛上走。 
    这个小岛在一个二维直角坐标系中描述。 
    你的任务就是帮gameboy找一个建造基地的位置,使矿工能以最快的速度采完所有矿。 

    Input

    输入数据有多组。每组数据的第一行是一个正整数n(0<n<1000000),表示小岛上有n个金矿。在接下来的n行中,每行有两个实数x,y,表示其中一个金矿的坐标。n=0表示输入数据结束。 

    Output

    每一组输入数据对应一行输出,输出两个实数x,y(保留小数点后两位),也就是你找到的建造基地的位置坐标。如果坐标不唯一,可以任选一个输出。 

    Sample Input

    4
    1.0 1.0
    3.0 1.0
    3.0 3.0
    1.0 3.0
    0

    Sample Output

    2.00 2.00


    // 找中位数
     1 #include<stdio.h>
     2 #include<algorithm>
     3 using namespace std;
     4 
     5 int n;
     6 double x[1000000], y[1000000];
     7 int main()
     8 {
     9     while(scanf("%d", &n), n)
    10     {
    11         for(int i=0;i<n;i++)
    12             scanf("%lf %lf", &x[i], &y[i]);
    13         sort(x,x+n); sort(y,y+n);
    14         if(n%2) printf("%.2f %.2f
    ", x[n/2], y[n/2]);
    15         else printf("%.2f %.2f
    ", (x[n/2]+x[n/2-1])/2.0, (y[n/2]+y[n/2-1])/2.0);
    16     }
    17     return 0;
    18 }
    View Code
  • 相关阅读:
    sublime c/c++ 环境
    sublime编写markdownm
    第八次课程作业
    第七次课程作业
    第六次作业
    第五次课程作业
    Arithmatic项目修改总结
    第四次课程作业
    第三次课程作业
    课程作业二
  • 原文地址:https://www.cnblogs.com/goldenretriever/p/10355584.html
Copyright © 2011-2022 走看看