提交时间:2024-01-25 13:49:16
运行 ID: 128139
#include<iostream> #include<cstdio> #include<algorithm> using namespace std; struct node{ int id,x,m; }; const int NR=1510; node a[NR]; bool cmp1(node x,node y){ return x.x>y.x; } bool cmp2(node x,node y){ return x.id<y.id; } int main(){ int n,i; cin>>n; for(i=1;i<=n;i++) { a[i].id=i; cin>>a[i].x; } sort(a+1,a+n+1,cmp1); for(i=1;i<=n;i++) if(a[i].x==a[i-1].x) a[i].m=a[i-1].m; else a[i].m=i; sort(a+1,a+n+1,cmp2); for(i=1;i<=n;i++) cout<<a[i].x<<" "<<a[i].m<<endl; return 0; }