#include<stdio.h>
#include<stdlib.h>

struct Node{
    int data;
    struct Node*next;
};

int main(){
    int n,x,val;
    struct Node*head =NULL,*tail= NULL;
    struct Node*curr,*prev;
    struct Node*first=NULL,*firstprev=NULL;
    struct Node*last=NULL,*lastprev=NULL;
    
    scanf("%d",&n);
    
    if(n<=0){
        printf("invalid input");
        return 0;
    }
    
    for(int i=0;i<n;i++){
        scanf("%d",&val);
        struct Node*temp=(struct Node*)malloc(sizeof(struct Node));
        temp->data=val;
        temp->next=NULL;
        if(head == NULL)
         head=tail=temp;
        else{
        tail->next=temp;
        tail=temp;
        }
    }
    scanf("%d",&x);
    curr=head;
    prev=NULL;
    
    while(curr !=NULL){
       if(curr->data==x){
           if(first==NULL){
               first = curr;
               firstprev = prev;
           }
           last = curr;
           lastprev = prev;
       } 
       prev=curr;
       curr=curr->next;
    }
    if(firstprev==NULL)
     head=first->next;
    else
    firstprev->next=first->next;
    
    if(last!=first){
        if(lastprev==NULL)
            head=last->next;
        
        else;
            lastprev->next=last->next;
            
    }
    curr=head;
    while(curr!=NULL){
        printf("%d",curr->data);
        if(curr->next!=NULL)
         print(" ");
        curr=curr->next;
    }
    return 0;
}