#include
#include
using namespace std;
struct node//定义结构体
{
int id;//学号
int score;//成绩
}a[1005];
bool cmp(node x,node y)//自定义比较函数
{
if(x.score==y.score)//如果成绩相等,按学号从小到大排序
return x.id<y.id;
return x.score>y.score;//按成绩从高到低排序
}
int main()
{
int n;
cin>>n;
for(int i=1;i<=n;i++)
{
a[i].id=i;
cin>>a[i].score;
}
sort(a+1,a+n+1,cmp);//排序
int rank=1;//排名
cout<<a[1].id<<" ";
for(int i=2;i<=n;i++)
{
if(a[i].score==a[i-1].score)//如果成绩相同,排名不变
cout<<a[i].id<<" ";
else
{
rank=i;//排名更新
cout<<a[i].id<<" ";
}
}
cout<<endl;
rank=1;//排名重新从1开始
cout<<rank<<" ";
for(int i=2;i<=n;i++)
{
if(a[i].score==a[i-1].score)//如果成绩相同,排名不变
cout<<rank<<" ";
else
{
rank=i;//排名更新
cout<<rank<<" ";
}
}
cout<<endl;
return 0;
}