#include <stdio.h>
#include <string.h>
#include <iostream>
#include <vector>
#include <stdlib.h>
using namespace std;
typedef struct Node {
int val;
// TreeNode *left;
// TreeNode *right;
// TreeNode(int x) : val(x), left(NULL), right(NULL) {}
Node *next;
Node *prior;
Node(int x):val(x),next(NULL),prior(NULL){}
}Node;
void BuildList1(int n,Node *head);
void BuildList2(int n,Node *head);
int main()
{
// freopen("in.txt","r",stdin);
int n;
cin>>n;
Node *head=(Node *)malloc(sizeof(Node));
// BuildList1(n,head);
BuildList2(n,head);
cout<<head->next->val;
return 0;
}
void BuildList1(int n,Node *head)
{
Node *s,*r;
//head=(Node *)malloc(sizeof(Node));
head->next=NULL;
r=head;
for(int i=1;i<=n;i++)
{
int val;
cin>>val;
s=new Node(val);
r->next=s;
s->prior=r;
r=s;
}
r->next=NULL;
}
void BuildList2(int n,Node *head)
{
Node *s,*r;
r=head;
head->next=NULL;
for(int i=1;i<=n;i++)
{
int val;
cin>>val;
s=new Node(val);
r->next = s;
s->prior = r;
s->next=r->next->next;
}
}
#include <string.h>
#include <iostream>
#include <vector>
#include <stdlib.h>
using namespace std;
typedef struct Node {
int val;
// TreeNode *left;
// TreeNode *right;
// TreeNode(int x) : val(x), left(NULL), right(NULL) {}
Node *next;
Node *prior;
Node(int x):val(x),next(NULL),prior(NULL){}
}Node;
void BuildList1(int n,Node *head);
void BuildList2(int n,Node *head);
int main()
{
// freopen("in.txt","r",stdin);
int n;
cin>>n;
Node *head=(Node *)malloc(sizeof(Node));
// BuildList1(n,head);
BuildList2(n,head);
cout<<head->next->val;
return 0;
}
void BuildList1(int n,Node *head)
{
Node *s,*r;
//head=(Node *)malloc(sizeof(Node));
head->next=NULL;
r=head;
for(int i=1;i<=n;i++)
{
int val;
cin>>val;
s=new Node(val);
r->next=s;
s->prior=r;
r=s;
}
r->next=NULL;
}
void BuildList2(int n,Node *head)
{
Node *s,*r;
r=head;
head->next=NULL;
for(int i=1;i<=n;i++)
{
int val;
cin>>val;
s=new Node(val);
r->next = s;
s->prior = r;
s->next=r->next->next;
}
}