回 帖 发 新 帖 刷新版面

主题:第69次编程比赛题目

题目:平面上有一堆随机分布的点,都有x,y坐标。任意给定一个点A,在这些点中快速找出三个点,它们构成的三角形正好包围点A(点A可以在三角形的边上,但三角形的三个点不能在同一直线上)。要求找出的三个点离点A的距离和最小。

// x[] -- 所有点的x坐标
// y[] -- 所有点的y坐标
// n   -- 点数(3<=n<=1000000)
// x0,y0 -- 点A的坐标
// 【返回值】三个点到点A的最小距离和,如果无解则返回0
double MinDistance(int x[], int y[], int n, int x0, int y0, char *id)
{
    strcpy(id, "");    // 请在""中填入你的id,主要是方便输出测试结果
        // ...
}

判断标准:
(1)正确
(2)时间效率
(3)空间效率
(4)可读性

比赛时间:
    2008年7月17日12:00 -- 2008年7月24日12:00

回复列表 (共21个回复)

21 楼

有意思,近几次比赛回帖都整好是20个,呵呵。

我来回复

您尚未登录,请登录后再回复。点此登录或注册