| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2347 人关注过本帖
标题:杭电1007
取消只看楼主 加入收藏
大秦嬴
Rank: 2
等 级:论坛游民
威 望:1
帖 子:31
专家分:31
注 册:2016-11-30
结帖率:100%
收藏
已结贴  问题点数:30 回复次数:0 
杭电1007
问题描述
你曾经在操场上玩掷?投掷是一种游戏,平环是针对一些玩具,所有玩具被授予。
在cyberground领域,每个玩具的位置是固定的,和环是经过精心设计,所以它只能围绕一个玩具的时候。另一方面,为了使游戏看起来更有吸引力,该环的设计有最大的半径。给定一个字段的配置,你应该找到这样一个环的半径。
假设所有的玩具都是平面上的点。一个点是包围圈如果点和环中心之间的距离小于半径的环。如果两个玩具被放置在同一点上,该环的半径被认为是0。
输入
输入包括几个测试用例。对于每一种情况,第一行包含一个整数n(2 < = N = 100000),在该领域的玩具总数。然后N行跟随,每个包含一对(x,y),这是一个玩具的坐标。输入终止由N = 0。
输出
对于每一个测试案例,在一行的cyberground经理要求的环半径打印,精确到小数点后2位。

下面是我的代码,结果是Runtime Error
(ACCESS_VIOLATION)
求大神指点。

#include <stdio.h>
#include <math.h>
int main()
{
    int n,i;
    float x[1000],y[1000];
    float max;
    while(scanf("%d",&n)!=EOF,n)
    {
        for(i=0;i<n;i++)
            scanf("%f %f",&x[i],&y[i]);
            if(n==1);
            else
        {
        max=sqrt(pow(x[1]-x[0],2)+pow(y[1]-y[0],2));
        if(n>2)
             for(i=2;i<n;i++)
                if(sqrt(pow(x[i]-x[i-1],2)+pow(y[i]-y[i-1],2))>max)
                    max=sqrt(pow(x[i]-x[i-1],2)+pow(y[i]-y[i-1],2));
        printf("%.2f\n",max/2);
        }
    }
    return 0;
}
搜索更多相关主题的帖子: 吸引力 最大的 领域 平面 玩具 
2017-02-08 19:23
快速回复:杭电1007
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.041128 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved