ajsdfkjasdfasdif 2015-12-04 05:32 采纳率: 16.7%
浏览 529

hdoj 1007 两点之间最短距离的二分之一 提交之后超时了 求c语言解法 感激不敬

#include"stdio.h"
#include"math.h"
int main()
{

int n,i,j;
double s;
while(scanf("%d",&n)&&n)
{
    double a[100000][5]={0};
    for(i=0;i<n;i++)
        for(j=0;j<2;j++)
            scanf("%lf",&a[i][j]);
    double min=sqrt((a[1][0]-a[0][0])*(a[1][0]-a[0][0])+(a[1][1]-a[0][1])*(a[1][1]-a[0][1]));
    for(i=0;i<n-1;i++)
        for(j=i+1;j<n;j++)
        {
            if(j!=i)
            {
            s=sqrt((a[j][0]-a[i][0])*(a[j][0]-a[i][0])+(a[j][1]-a[i][1])*(a[j][1]-a[i][1]));
            if(s<min)
                min=s;
            }
        }
        printf("%0.2f\n",min/2);
}
        return 0;

}

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥20 双层网络上信息-疾病传播
    • ¥50 paddlepaddle pinn
    • ¥20 idea运行测试代码报错问题
    • ¥15 网络监控:网络故障告警通知
    • ¥15 django项目运行报编码错误
    • ¥15 请问这个是什么意思?
    • ¥15 STM32驱动继电器
    • ¥15 Windows server update services
    • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
    • ¥15 模糊pid与pid仿真结果几乎一样