题解 | #一堆点#
一堆点
https://ac.nowcoder.com/acm/problem/15592
#include using namespace std; const int maxn=1e6+5; #include #include struct node{ double a; double b; double c; double sum; }s[maxn]; bool cmp(node a,node b) { if(a.sum<b.sum) return 1; else{ if(a.sum==b.sum) { if(a.a<b.a) return 1; else{ if(a.a==b.a) { if(a.b<b.b) return 1; else{ if(a.b==b.b) { if(a.c<b.c) return 1; } } } } } } return 0; } int main() { int n; cin>>n; int i=0; while(n--) { cin>>s[i].a>>s[i].b>>s[i].c; s[i].sum=s[i].as[i].a+s[i].bs[i].b+s[i].c*s[i].c; i++; } sort(s,s+i,cmp); for(int j=0;j<i;j++) { cout<<s[j].a<<" "<<s[j].b<<" "<<s[j].c<<endl; } }