第二届2011年国信蓝点杯软件设计大赛预赛的试题最近距离

来源:互联网 发布:linux查看cpu线程数 编辑:程序博客网 时间:2024/04/29 04:39
package java_gaozhi_2011;


import java.util.ArrayList;
import java.util.List;


/*最近距离
已知平面上的若干点的位置,存入一个List中。
现在需要计算所有这些点中,距离最近的两个点间的最小距离。
请补全缺失的代码。把填空的答案(仅填空处的答案,不包括题面)
存入考生文件夹下对应题号文件夹中的“解答.txt”中即可。
class MyPoint
{
private double x;  // 横坐标
private double y;  // 纵坐标

public MyPoint(double x, double y)
{
this.x = x;
this.y = y;
}

public static double distance(MyPoint p1, MyPoint p2)
{
double dx = p1.x - p2.x;
double dy = p1.y - p2.y;
return Math.sqrt(dx*dx + dy*dy);
}

/*
 lst中含有若干个点的坐标
 返回其中距离最小的点的距离

public static double getMinDistance(List<MyPoint> lst)
{
double r = ________________;
int n = lst.size();
for(int i=0; i<n; i++)
{
for(int j=i+1; j<n; j++)
{
MyPoint p1 = lst.get(i);
MyPoint p2 = lst.get(j);

double d = MyPoint.distance(p1,p2);
if( d < r ) ______________;
}
}
return r;
}
}
*/
public class Task_4 {
private double x;  // 横坐标
private double y;  // 纵坐标

public Task_4(double x, double y)
{
this.x = x;
this.y = y;
}

public static double distance(Task_4 p1, Task_4 p2)
{
double dx = p1.x - p2.x;
double dy = p1.y - p2.y;
return Math.sqrt(dx*dx + dy*dy);
}


public static double getMinDistance(List<Task_4> lst)
{
double r = Math.sqrt(lst.size()*lst.size());
int n = lst.size();
for(int i=0; i<n; i++)
{
for(int j=i+1; j<n; j++)
{
Task_4 p1 = lst.get(i);
Task_4 p2 = lst.get(j);

double d = Task_4.distance(p1,p2);
if( d < r ) r = d;
}
}
return r;
}
public static void main(String[] args) {
List<Task_4> list = new ArrayList<Task_4>() ;
list.add(new Task_4(31,4));  
        list.add(new Task_4(1,2));  
        list.add(new Task_4(1,1));  
        list.add(new Task_4(1,4));  
        System.out.println(Task_4.getMinDistance(list)); 
}


}
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 八个月宝宝不吃米糊怎么办 八个月宝宝不吃辅食怎么办 六个月宝宝不吃米粉怎么办 4个月婴儿积食怎么办 黑色的衣服泛红怎么办 不听劝的人该怎么办 牛仔裙子腰大了怎么办 天猫店铺降权怎么办 淘宝做文胸的标题要怎么办 秋衣弹力衣服松了怎么办 假离婚变成真的怎么办 百家利钱不到账怎么办 皮鞋撑大了怎么办变小 鞋穿着走路掉跟怎么办 浅口帆布鞋大了怎么办 布鞋后鞋跟老掉怎么办 穿坡跟凉鞋容易打滑摔倒怎么办 运动鞋烂了个口怎么办 运动鞋的网烂了怎么办 运动鞋鞋一个一个高一个低怎么办 淘宝预售水果不发货怎么办 淘宝评价忘记晒图了怎么办 参加水果展没有实物怎么办 没做过运营面试怎么办 苹果5s16g内存满了怎么办 618天猫有活动淘宝没有怎么办 天猫国际买到假货怎么办 天猫恶意差评怎么办 天猫删除差评被扣分了怎么办 天猫收到差评怎么办 天猫给差评骚扰怎么办 天猫客户差评怎么办 天猫没法给差评怎么办 天猫上限购一件怎么办 拍下商品不发货怎么办 天猫红包过期了怎么办 买天猫店被中介骗了钱怎么办 速卖通假货纠纷怎么办 天猫新开店被恶意拍下怎么办 新开的天猫店没有生意怎么办 银行的支票丢了怎么办