#include<stdio.h>
int main(){
int n,m,i,a[1000]={0};
scanf("%d",&n);
scanf("%d",&m);
m=m%n;
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n;i++){
a[n+i]=a[i];
}
for(i=0;i<n;i++){
a[i]=a[n-m+i];
}
for(i=0;i<n;i++){
printf("%d",a[i]);
if(i<n-1) printf(" ");
}
return 0;
}
总结:
1、题目关键点为不能使用另外一个数组,但是没有规定a数组的数组长度,可以巧妙利用a数组没用到的数组空间进行备份数据,其实也算是另一种形式的新建数组。
2、有一个需要注意的地方:a数组的长度不能设置为100,尽量设大一点,因为要用到剩余空间,而测试点很可能很大,所以如果设置100,会发生”段错误“即”数组越界“。