#include<stdio.h>
#include<stdlib.h>
typedef struct node{
    int data;
    struct node*next,*prev;
}node;
node*head=NULL,*tail;
void create(){
    node*newnode=(node*)malloc(sizeof(node));
    newnode->data=num;
    newnode->prev=NULL;
    newnode->next=NULL;
    if(head == NULL){
        head=newnode;
        tail=newnode;
    }
    else{
        newnode->prev=tail;
        tail->next=newnode;
        tail=newnode;
    }
}
void display(){
    node*itr;
    for(itr=head;itr!=NULL;itr=itr->next){
        printf("%d ",itr->data);
        return 0;
    }
}
void deletion(int val){
    iter=head->next;
    if(head->data == val){
        head=head->next;
        head->next=val;
    }
    else if(tail->data == val){
        tail->next->prev=num;
    }
    else{
        if(iter->data==val){
            iter->next->prev=iter->prev;
            iter->prev->next=iter->next;
        }
        iter=iter->next;
    }
}
int main(){
   int i,size,val,num,iter,itr;
   scanf("%d",&size);
   if(size<0){
       printf("Node not found");
       return 0;
   }
   for(i=0;i<size;i++){
       scanf("%d",&num);
       create(num);
   }
   if(iter == NULL){
       printf("Node not found");
       return 0;
   }
   else{
       deletion(val);
       display();
   }
   return 0;
}