Files
python/TangDou/CSP-J/MKX_B/LianXiTi_WithNode.cpp

39 lines
929 B
C++
Raw Normal View History

2025-08-30 18:35:01 +08:00
#include <bits/stdc++.h>
using namespace std;
const int N = 110;
int n = 4;
struct Node{
string name;
int id;
int score;
}a[N];
bool cmp(Node x,Node y){
if(x.score==y.score) return x.id<y.id;
return x.score>y.score;
}
int main() {
a[1] = {"AA", 1, 100};
a[2] = {"BB", 2, 90};
a[3] = {"CC", 3, 90};
a[4] = {"DD", 4, 100};
//排序
sort(a + 1, a + 1+n,cmp);
for (int i = 1; i <= n; i++) cout << a[i].name << " ";
cout<<endl;
int mc = 1; //当前是第几名
int sl = 0; //当前名次数量
for (int i = 1;i<=n;i++){
// 如果与前一位一样,那么当前名次数量+1;否则是1
if(a[i].score==a[i-1].score){
sl++;
} else {
mc+=sl;
sl = 1;
}
//输出当前名次
cout << mc << " ";
}
return 0;
}