题目描述
有一个长度为n数组,需要将数组中从指定位置m开始的k个元素倒放在原来的数组中。
输入要求
第一行输入n,m,k (1<=n<=50,1<=m<=n,1<=k<=n-m+1)
第二行输入数组中的n个数。
m代表元素的实际位置而不是在数组中的下标值。
输出要求
输出倒置后的数组,两个数字之间用空格间隔。
输入样例
13 3 11
1 2 3 4 5 6 7 8 9 10 11 12 13
输出样例
1 2 13 12 11 10 9 8 7 6 5 4 3
#include<cstdio>
int main()
{
int i,j,n,m,x,a[106],b[106],set=0;
scanf("%d%d%d",&n,&m,&x);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
int p=m+x-1;
int zll=p;
for(i=m-1;i<zll;i++){
p=p-1;
b[i]=a[p];
}
for(i=m-1;i<zll;i++){
a[i]=b[i];
}
for(i=0;i<n;i++){
if(set==0){
printf("%d",a[i]);
set=1;
}
else{
printf(" %d",a[i]);
}
}
printf("\n");
}