#include <iostream>
#include <algorithm>
using namespace std;
bool cmp(int m,int n)
{
return m>n;
}
class LIST
{
public:
LIST(int a[],int len)//构造函数,用len初始化size,根据size动态分配数组存储空间,arr指向该存储空间
{
int i;
size=len;
arr=new int [len];
for (i=0;i<size;i++)
arr[i]=a[i];
}
void sortpart(int m,int n)
{
sort(arr+m-1,arr+m+n-1,cmp);
}//将数列从第m个元素开始的n个数排成降序
void output()
{
for (int i=0;i<size;i++)
cout<<arr[i]<<" ";
}//输出整个数列
~LIST() //析构函数,释放arr指向的存储空间
{
delete []arr;
}
private:
int size;//数列元素的个数
int *arr ; //数列数组的起始指针
};
int main ()
{
int n,x,y,arr[200],i,j;
while(cin>>n)
{
for (i=0;i<n;i++)
cin>>arr[i];
cin>>x>>y;
LIST w(arr,n);
w.sortpart(x,y);
w.output();
}
return 0;
}
#include <algorithm>
using namespace std;
bool cmp(int m,int n)
{
return m>n;
}
class LIST
{
public:
LIST(int a[],int len)//构造函数,用len初始化size,根据size动态分配数组存储空间,arr指向该存储空间
{
int i;
size=len;
arr=new int [len];
for (i=0;i<size;i++)
arr[i]=a[i];
}
void sortpart(int m,int n)
{
sort(arr+m-1,arr+m+n-1,cmp);
}//将数列从第m个元素开始的n个数排成降序
void output()
{
for (int i=0;i<size;i++)
cout<<arr[i]<<" ";
}//输出整个数列
~LIST() //析构函数,释放arr指向的存储空间
{
delete []arr;
}
private:
int size;//数列元素的个数
int *arr ; //数列数组的起始指针
};
int main ()
{
int n,x,y,arr[200],i,j;
while(cin>>n)
{
for (i=0;i<n;i++)
cin>>arr[i];
cin>>x>>y;
LIST w(arr,n);
w.sortpart(x,y);
w.output();
}
return 0;
}