// editor1
#include<stdio.h>
#include<stdlib.h>
typedef struct Node{
    int data;
    struct Node*prev;
    struct Node*next;
}node;

node*head=NULL;
void create(int num){
    node*newnode=(node*)malloc(1*sizeof(node));
    newnode->data=num;
    if(head==NULL){
        newnode->next=newnode;
        head=newnode;
    }
    else{
        newnode->next=head->next;
        head->next=newnode;
        head=newnode;
    }
}

int deletev(int val){
 node*curr=head->next,*prev=head;

 if(head==NULL){
       return 0;
 }
 do{
     if(curr->data==val){
         if(curr==prev){
             
             free(curr);
             head=NULL;
               return 1;
         }
         prev->next=curr->next;
         if(curr == head)
         head=prev;
         free(curr);
           return 1;
     }
     prev=curr;
     curr=curr->next;

 }while(curr!=head->next);
  
      return 0;
}

void display(){
    if(!head)
      return;
    node*temp=head->next;
    do{
        printf("%d ",temp->data);
        temp=temp->next;
        
    }while(temp!=head->next);
}
int main(){
    int n,num;
    scanf("%d",&n);
    if(n<0){
        printf("Invalid input");
     
    }
    for(int i=1;i<=n;i++){
        scanf("%d",&num);
          insert(num);
    }
    int val;
    scanf("%d",&val);
    
    int result=deletev(val);
    if(result==0){
        printf("Node not found");
        return 0;
    }
    else{
        display();
    }
    return 0;
}