数列的翻转表的一个算法的问题的求解,用C语言的程序编写怎么实现的啊

Problem Description
Let { A1,A2,...,An } be a permutation of the set{ 1,2,..., n}. If i < j and Ai > Aj then the pair (Ai,Aj) is called an "inversion" of the permutation. For example, the permutation {3, 1, 4, 2} has three inversions: (3,1), (3,2) and (4,2).
The inversion table B1,B2,...,Bn of the permutation { A1,A2,...,An } is obtained by letting Bj be the number of elements to the left of j that are greater than j. (In other words, Bj is the number of inversions whose second component is j.) For example, the permutation:
{ 5,9,1,8,2,6,4,7,3 }
has the inversion table
2 3 6 4 0 2 2 1 0
since there are 2 numbers, 5 and 9, to the left of 1; 3 numbers, 5, 9 and 8, to the left of 2; etc.
Perhaps the most important fact about inversions is Marshall Hall's observation that an inversion table uniquely determines the corresponding permutation. So your task is to convert a permutation to its inversion table, or vise versa, to convert from an inversion table to the corresponding permutation.

Input
The input consists of several test cases. Each test case contains two lines.
The first line contains a single integer N ( 1 <= N <= 50) which indicates the number of elements in the permutation/invertion table.
The second line begins with a single charactor either 'P', meaning that the next N integers form a permutation, or 'I', meaning that the next N integers form an inversion table.

Output
For each case of the input output a line of intergers, seperated by a single space (no space at the end of the line). If the input is a permutation, your output will be the corresponding inversion table; if the input is an inversion table, your output will be the corresponding permutation.

Sample Input
9
P 5 9 1 8 2 6 4 7 3
9
I 2 3 6 4 0 2 2 1 0
0

Sample Output
2 3 6 4 0 2 2 1 0
5 9 1 8 2 6 4 7 3

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

1
关于图中所说的斐波那契数列算法复杂度计算的两种准则
2
求数列的和,用C语言,谢谢
1
C语言求数列的的第n项的和
1
一个数列递推求解的问题,C语言数据结构怎么解决这个问题呢?
1
等差数列的问题,采用C 语言如何才能进行求解呢??
2
求解一个和平方数列求和有关的解法的问题,采用C语言解决这个问题的思路实现怎么做?
1
一个数列数组的求和再求比率的问题,如何利用C语言的方法编程算法解决
0
综合运用算法数据结构解决区间交的问题输出答案,C语言应用的问题
0
数列级数的极值的计算的一个问题,请问是如何利用C语言的编程代码实现的呢
0
兔子繁殖的数列的问题,运用C语言的技术如何才能解决的?
0
综合运用C语言的编程的技术如何解决这里的数列求和的算法问题呢
0
数列对的问题,如何运用C语言的方式作答,利用C语言如何解决这个问题
0
请教各位神人看下这里的C语言如何才能高效解决楼梯数列推导的问题
0
数列整数相邻判断的问题,如何利用C语言的功能去实现的
0
如何利用C语言编程实现对数列的搜索问题,采用C语言代码的编写的方式是怎么做?
0
数列的倍增的一个算法题目的求解的过程,如何利用C语言的计算的编程?
0
数列累积核的问题,数据结构的算法怎么利用C语言的形式实现
0
整数在数列中的位置的查找问题,利用C语言编程技术的解答的思路
0
二进制线段数列的枚举的典型问题,使用C语言编写程序设计解决这个算法是怎么做的
0
菲波那契数列(Fibonacci numbers)的一个算法问题,运用C语言实现的形式和做法