P5143 攀爬者
https://www.luogu.com.cn/problem/P5143
涉及知识点:结构体、sort参数、函数(结构体参数)、排序
#include<bits/stdc++.h> using namespace std; struct p{ int x, y, z; void input(){ cin>>x>>y>>z; } }; bool cmp(p x, p y){ //以z大小进行排序 作为参数 return x.z<y.z; } double dis(p i, p j){ return sqrt(pow(i.x-j.x, 2)+pow(i.y-j.y, 2)+pow(i.z-j.z, 2)); } int n; p a[50005]; double ans; int main() { cin>>n; for(int i=0; i<n; i++) //结构体数组输入 a[i].input(); sort(a,a+n,cmp); //以z大小进行排序 for(int i=1; i<n; i++) //计算答案 ans+=dis(a[i-1],a[i]);//结构体作为函数传参 cout<<fixed<<setprecision(3)<<ans; return 0; }