#include<iostream>
#include<vector>
#include<algorithm>
#include<math.h>
using namespace std;
int main()
{
int hash[100000];
int n;
cin>>n;
int tag=0;
for(int i=0;i<n;i++)
{
int x;
cin>>x;
if(x==-1)
tag=i;
hash[x]=i;
}
vector<int>arr;
arr.push_back(tag);
int now=tag;
for(int i=0;i<n-1;i++)
{
arr.push_back(hash[now]);
now=hash[now];
}
reverse(arr.begin(),arr.end());
int out[100000]={0};
for(int i=0;i<arr.size();i++)
{
out[arr[i]]=i+1;
}
for(int i=0;i<arr.size();i++)
{
if(i!=0)
cout<<" ";
cout<<out[i];
}
}
7-5 静态链表的秩 (25 分)pat乙级
最新推荐文章于 2022-07-18 19:45:48 发布