80分求助!!!

P5735 【深基7.例1】距离函数

monkey333 @ 2024-04-13 20:40:30

#include <bits/stdc++.h>
using namespace std;
int main(){int a[7];
    cin>>a[1]>>a[2]>>a[3]>>a[4]>>a[5]>>a[6];
    cout<<fixed<<setprecision(2)<<sqrt((a[3]-a[1])*(a[3]-a[1])+(a[4]-a[2])*(a[4]-a[2]))+sqrt((a[5]-a[1])*(a[5]-a[1])+(a[6]-a[2])*(a[6]-a[2]))+sqrt((a[5]-a[3])*(a[5]-a[3])+(a[6]-a[4])*(a[6]-a[4]));
    return 0;
}

最后一个得分点WA了


by Dream_Creator @ 2024-04-13 20:43:16

@monkey333 a 数组用 double 类型


by 3_14 @ 2024-04-13 20:43:21

#include<bits/stdc++.h>
using namespace std;
double X1,X2,X3,Y1,Y2,Y3;
int main(){
    cin>>X1>>Y1>>X2>>Y2>>X3>>Y3;
    double a=sqrt(pow(X2-X1,2)+pow(Y2-Y1,2)),b=sqrt(pow(X3-X2,2)+pow(Y3-Y2,2)),c=sqrt(pow(X1-X3,2)+pow(Y1-Y3,2));
    cout<<fixed<<setprecision(2)<<a+b+c<<'\n';
    return 0;
}

@monkey333


by 3_14 @ 2024-04-13 20:44:12

直接用pow,看上去更加的简洁


by 3_14 @ 2024-04-13 20:46:19

@monkey333

也对,没有精度,算不出来,在每一个计算前面1.0* 。


|