0分,求
查看原帖
0分,求
1035092
tian_lkrexe114514楼主2024/12/28 10:11
#include<bits/stdc++.h> 
using namespace std;
struct s{
	int x,y,z;
	
}sl[50001];
bool cmp(s s1,s s2)
{
	if(s1.z<s2.z)
	{
		return true;
	}
	else
	{
		return false;
	}
}
int main()
{
	int n;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>sl[i].x>>sl[i].y>>sl[i].z;
	}
	sort(sl+1,sl+n+1,cmp);
	double sum=0;
	for(int i=1;i<=n;i++)
	{
		double d=sqrt(((sl[i+1].x-sl[i].x)*(sl[i+1].x-sl[i].x))+((sl[i+1].y-sl[i].y)*(sl[i+1].y-sl[i].y))+((sl[i+1].z-sl[i].z)*(sl[i+1].z-sl[i].z)));
		double ans=sqrt(d);
		sum=sum+ans;
	}
	printf("%.3lf",sum);
		
}
样例输出 8.207
2024/12/28 10:11
加载中...