测试点4WA,84求助!!!?

P1104 生日

Mwf136 @ 2024-07-07 10:39:42

#include<algorithm>
#include<string.h>
#include<iostream>
using namespace std;
struct st{
    string a;
    int b,c,d;
};
bool cmp(st a,st b){
    if(a.b!=b.b)return a.b<b.b;
    if(a.c!=b.c)return a.c<b.c;
    if(a.d!=b.d)return a.d<b.d;
    return 1;
}
int main(){
    int n;
    scanf("%d",&n);
    st a[n];
    for(int i=0;i<n;i++)
        cin>>a[i].a>>a[i].b>>a[i].c>>a[i].d;
    sort(a,a+n,cmp);
    for(int i=0;i<n;i++)
        cout<<a[i].a<<endl;
    return 0;
}

by ye_1021 @ 2024-07-08 21:03:39

生日相同如何输出?


by Mwf136 @ 2024-07-08 21:21:43

@y6692789 我在cmp的时候写了个return 1表示a在前输出所以此时a>b.但是 总感觉哪儿怪怪的……


|