捞
#include<bits/stdc++.h>
using namespace std;
struct Arr{
int Val,Pos;
};
vector<Arr> fruits;
int n;
int main()
{
scanf("%d",&n);
Arr x;
x.Val = -1;
x.Pos = 0;
fruits.push_back(x);
for(int i = 1;i <= n;i++)
{
Arr x;
scanf("%d",&x.Val);
x.Pos = i;
fruits.push_back(x);
}
while(fruits.size())
{
Arr x;
x = fruits[1];
int j = 1;
for(int i = 1;i < fruits.size();i++)
{
if(x.Val ^ fruits[i].Val)
{
vector<Arr>::iterator it = fruits.begin() + j - 1;
printf("%d ",x.Pos);
j = i;
x = fruits[i];
fruits.erase(it);
i--;
}
}
vector<Arr>::iterator it = fruits.begin() + j - 1;
printf("%d\n",x.Pos);
fruits.erase(it);
printf("now :");
for(int i = 0;i < fruits.size();i++)
{
printf("%d ",fruits[i].Pos);
}
printf("\n");
}
return 0;
}