3 条题解

  • 0
    @ 2026-8-22 11:07:50

    #include <bits/stdc++.h> #define int long long using namespace std; struct stu{ int id,sc; string name; int mc,wz; }a[1005],b[1005]; bool cmp(stu l,stu r){ if(l.sc!=r.sc){ return l.sc>r.sc; } else{ return l.id<r.id; } } signed main(){ int n; cin >> n; for(int i=1;i<=n;i++){ cin >> a[i].id >> a[i].name >> a[i].sc; a[i].wz=i; b[i]=a[i]; } sort(a+1,a+1+n,cmp); for(int i=1;i<=n;i++){ if(i1){ a[i].mc=1; b[a[i].wz].mc=a[i].mc; } else if(a[i].sca[i-1].sc){ a[i].mc=a[i-1].mc; b[a[i].wz].mc=a[i].mc; } else{ a[i].mc=a[i-1].mc+1; b[a[i].wz].mc=a[i].mc; } } for(int i=1;i<=n;i++){ cout << b[i].mc << endl; } return 0; }

    • 0
      @ 2026-4-7 16:35:41

      #include <bits/stdc++.h> using namespace std; struct st{ string name; int wz,jx,fen,mc; }; bool cmp1(st a,st b){ if(a.fenb.fen){ return a.mc<b.mc; }else{ return a.fen>b.fen; } } bool cmp2(st a,st b){ return a.wz<b.wz; } int n; st s[1010]; int main(){ cin>>n; for(int i=1;i<=n;i++){ cin>>s[i].mc>>s[i].name>>s[i].fen; s[i].wz=i; } sort(s+1,s+1+n,cmp1); s[1].jx=1; for(int i=2;i<=n;i++){ if(s[i].fens[i-1].fen){ s[i].jx=s[i-1].jx; }else{ s[i].jx=s[i-1].jx+1; } } sort(s+1,s+1+n,cmp2); for(int i=1;i<=n;i++){ cout<<s[i].jx<<endl; } return 0; }

      • -1
        @ 2026-3-29 11:05:23
        #include <bits/stdc++.h>
        using namespace std;
        struct st{
            string name;
            int wz,jx,fen,mc;
        };
        bool cmp1(st a,st b){
            if(a.fen==b.fen){
                return a.mc<b.mc;
            }else{
                return a.fen>b.fen;
            }
        }
        bool cmp2(st a,st b){
            return a.wz<b.wz;
        }
        int n;
        st s[1010];
        int main(){
            cin>>n;
            for(int i=1;i<=n;i++){
                cin>>s[i].mc>>s[i].name>>s[i].fen;
                s[i].wz=i;
            }
            sort(s+1,s+1+n,cmp1);
            s[1].jx=1;
            for(int i=2;i<=n;i++){
                if(s[i].fen==s[i-1].fen){
                    s[i].jx=s[i-1].jx;
                }else{
                    s[i].jx=s[i-1].jx+1;
                }
            }
            sort(s+1,s+1+n,cmp2);
            for(int i=1;i<=n;i++){
                cout<<s[i].jx<<endl;
            }
            return 0;
        }
        
        
        • 1

        信息

        ID
        4783
        时间
        1000ms
        内存
        256MiB
        难度
        3
        标签
        递交数
        14
        已通过
        11
        上传者