8019:数列中n个整数排序

Time/Memory Limit:1000 MS/32768 K
Submitted: 863 Accepted: 416

 Problem Description

设计一个包含size个数的数列,要求能够把从指定位置x开始的y个数排列成降序,并输出新的完整的数列。可将数列存放在一维数组中。
例如,原来列有10个数,值为{1,8,3,0,5,9,7,6,9,8},若要求把从第4个数开始的5个数排成降序,
则得到的新数列为{1,8,3,9,7,6,5,0,9,8}。试建立一个类LIST,来完成上述功能。


class LIST
{
public:
 LIST(int a[],int len); //构造函数,用len初始化size,根据size动态分配数组存储空间,arr指向该存储空间
 void sortpart(int m,int n);    //将数列从第m个元素开始的n个数排成降序
 void output();   //输出整个数列
 ~LIST();   //析构函数,释放arr指向的存储空间
private:
 int size; //数列元素的个数
 int *arr;    //数列数组的起始指针
};

 Input

输入数据有多组,每组:
第1行输入整型数列的个数n;
第2行输入整型数列各个元素的值;
第3行输入x和y,表示将超长整型数列从指定位置x开始的y个数排列成降序;

 Output

每组输出排序后的结果,占一行。每个元素后带一个空格。

 Sample Input

10
1 4 2 7 3 8 2 8 23 6
3 5

 Sample Output

1 4 8 7 3 2 2 8 23 6 

 Author

zyx

 Recommend

zh