#include
using namespace std;
struct node{
long long int data;
struct node *next;
};
struct node *p;
void addtrail(node &head,long long int data){
noden=new node;
n->data=data;
n->next=NULL;
if(head==NULL){
head=n;
p=n;
}
p->next=n;
p=n;
}
void kalternate(node &head,long long int k,long long int n){
nodecur=head;
nodel;
int count=0;
while((cur)&&(count<n-k)){
l=cur;
cur=cur->next;
count=count+1;
}
nodet=cur;
while(cur->next){
cur=cur->next;
}
cur->next=head;
l->next=NULL;
head=t;
}
int main() {
long long int n,k;
cin>>n;
long long int a[n];
node *head=NULL;
for(long long int i=0;i<n;i++){
cin>>a[i];
addtrail(head,a[i]);
}
cin>>k;
kalternate(head,k,n);
node *u=head;
while(u){
cout<data<<" ";
u=u->next;
}
return 0;
}