#include<stdio.h>
#include<stdlib.h>

struct node{
    int data;
    struct node*next;
};
int main(){
int n,value,pos,;
scanf("%d",&n);

struct node *head=NULL,*temp=NULL,*newnode=NULL;

for(i=0;i<n;i++){
    newnode =(struct node*)malloc(sizeof(struct node));
    scanf("%d",&newnode->data);
    newnode->next=NULL;
    if(head==NULL){
        head=newnode;
        temp=head;
    }
    else{
        temp->next=newnode;
        temp=newnode;
    }
}
scanf("%d",&value);
scanf("%d",&pos);

if(pos<1 || pos>n+1){
    printf("Invalid input");
    return 0;
}
newnode =(struct node*)malloc(sizeof(struct node));
newnode->data =value;
newnode->next=NULL;

if(pos==1){
    newnode->next=head;
    head=newnode;
}
else{
    temp=head;
    for(i=1;i<pos;i++){
        temp=temp->next;
    }
    newnode->next=temp->next;
    temp->next =newnode;
}
temp=head;
while(temp!=NULL){
    printf("%d ",temp->data);
    temp=temp->next;
}
return 0;
}