cakes



1000 ms  |  内存限制: 65535



0




Multiple sets of test data

first give you a digsit the number of cakes;


then there are n digsits

输出 。。。 样例输入

4 4 2 1 3 5 4 3 1 2 5


样例输出

2 1 3 0 2 3 1 0 4


提示

maybe they are equal to others,if so ,printf the order before

题特别容易,就是题意太难理解(英语太渣)。

题意:

就是有n个数,把它们按升序排列后,再输出它们原本所处的位置的序号。

Hait:注意提示的内容。。。

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
struct zz
{
	int x;
	int y;
}q[1010];
int cmp(zz a,zz b)
{
	if(a.x==b.x)
		return a.y<b.y;
	return a.x<b.x;
}
int main()
{
	int n,i;
	while(scanf("%d",&n)!=EOF)
	{
		for(i=0;i<n;i++)
		{
			scanf("%d",&q[i].x);
			q[i].y=i;
		}
		sort(q,q+n,cmp);
		for(i=0;i<n-1;i++)
			printf("%d ",q[i].y);
			printf("%d\n",q[n-1].y); 
	}
	return 0;
}