#include<stdio.h>
#include<stdlib.h>
struct node{
    int data;
    struct node*next;
};
  struct node*createnode(int value){
      struct node*newnode=struct node*)malloc(sizeof(struct node));
      newnode->data=value;
      newnode->next=NULL;
      return newnode;
  }
  void append(struct node**head,int value){
      struct node*newnode=createnode(value);
      if(*head==NULL) {
          *head=newnode;
          return;
    }
      struct node*temp=*head;
      while(temp->next!=NULL){
          temp=temp->next;
      }
      temp->next=newnode;
  }
    void deletelastk(struct node**head,int k){
        if(*head==NULL)
        return;
        int length=0;
        struct node*temp=*head;
        while(temp!=NULL){
            length++;
            temp=temp->next;
        }
        if(k>length){
            printf("Invalid input\n");
            return;
        }
         if(k==length){
            *head=NULL;
            printf("List is empty\n");
            return;
         }
         int stop=length-k-1;
         temp=*head;
         for(int i=0;i<stop+1;i++){
             if(temp->next==NULL)break;
             if(i==stop)break;
             temp=temp->next;
         }
         struct node*del=temp->next;
         temp->next=NULL;
         while(del!=NULL){
             struct node*next=del->next;
             free(del);
        }
        struct node*curr=head;
        while(curr!=NULL){
            printf("%d",curr->data);
            if(curr->)next!=NULL)
            printf(" ");
            curr=curr->next;
        }
         printf("\n");
    }
      int main(){
          int n;
          if(scanf("%d",&n)!=1||n<1||n>1000){
              printf("Invaild input\n");
              return 0;
          }
          struct node*head=NULL;
          for(int i=0;i<n;i++){
              int value;
              if(scanf("%d",&value)!=1){
                  printf("Invalid input\n");
                  return 0;
              }
              append(&head,value);
          }
          int k;
          if(scanf("%d",&k)!=1||k<0){
              printf("Invalid input\n");
              return 0;
          }
            deletelastk(&head,k);
            return 0;
      }