#include<stdio.h>
#include<stdlib.h>
void move(int *a, int n, int k);
void move(int *a, int n, int k){
int temp;
for(int i=0; i<k; i++){
temp = a[n-1];
for(int j=n-2; j>=0; j--){
a[j+1] = a[j];
}
a[0] = temp;
}
for (int i = 0; i < n; i++) {
printf("%d ", a[i]);
}
printf("\n");//首先保存原数组最后一个元素的值,然后将数组中的其他元素向右移动一位(从后往前循环),
//最后将保存的值赋给数组的第一个元素。
//重复k次以上过程,即可得出循环右移k个位置的数组。最终输出循环右移k位后的一维数组。
}
int main(){
int n,k;
scanf("%d", &n);
scanf("%d", &k);
if(n>=100||k>=100){
return 0;
}
int a[100];
for(int i=0; i<n; i++){
scanf("%d", &a[i]);
}
move(a, n, k);
return 0;
}