1 条题解
-
0
#include <bits/stdc++.h>
#define int long long using namespace std; struct stu{ int sc,wz,mc; }a[100005],b[100005]; bool cmp(stu l,stu r){ return l.sc>r.sc; } signed main(){ int n; cin >> n; for(int i=1;i<=n;i++){ cin >> 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(a[i].sc!=a[i-1].sc){ a[i].mc=i; b[a[i].wz].mc=a[i].mc; } else{ a[i].mc=a[i-1].mc; b[a[i].wz].mc=a[i].mc; } } for(int i=1;i<=n;i++){ cout << b[i].mc << endl; } return 0; }
信息
- ID
- 4953
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 2
- 标签
- 递交数
- 68
- 已通过
- 38
- 上传者