#include <bits/stdc++.h>
using namespace std;
struct lst
{
int date;
lst *next;
};
void Create_list1(lst *head, int n)
{
lst *tail, *p;
tail = head;
for (int i = 0; i < n; i++)
{
p = new lst;
cin >> p->date;
p->next = NULL;
tail->next = p;
tail = p;
}
}
void Create_list2(lst *head, int n)
{
lst *p;
p = new lst;
for (int i = 0; i < n; i++)
{
p = new lst;
cin >> p->date;
head->next = p;
head = p;
}
p->next = NULL;
}
void nixucreatelst(lst *head, int t)
{
lst *p;
head->next = NULL;
for (int i = 0; i < t; i++)
{
p = new lst;
cin >> p->date;
p->next = head->next;
head->next = p;
}
}
void list_delete(lst *head)
{
lst *p;
p = head->next;
lst *q;
while (p->next)
{
if (p->next->date == 2)
{
q = p->next;
p->next = q->next;
delete (q);
}
else
p = p->next;
}
}
void Show_list(lst *head)
{
lst *p;
p = head->next;
while (p)
{
printf("%d%c", p->date, p->next != NULL ? ' ' : '\n');
p = p->next;
}
}
void list_nizhi(lst *head)
{
lst *p, *q;
p = head->next;
head->next = NULL;
while (p)
{
q = p;
p = p->next;
q->next = head->next;
head->next = q;
}
}
void list_sort(lst *head, int n)
{
int t;
lst *p, *q;
for (p = head->next; p; p = p->next)
{
for (q = p->next; q; q = q->next)
{
if (p->date > q->date)
{
t = q->date;
q->date = p->date;
p->date = t;
}
}
}
}
void list_chaifen(lst *head)
{
lst *head2, *p, *r1, *r2;
head2 = (lst *)malloc(sizeof(lst *));
r1 = head;
r2 = head2;
p = head->next;
while (p)
{
if (p->date % 2 == 0)
{
r2->next = p;
r2 = p;
p = p->next;
r2->next = NULL;
}
else
{
r1->next = p;
r1 = p;
p = p->next;
r1->next = NULL;
}
}
p = head->next;
while (p)
{
printf("%d%c", p->date, p->next != NULL ? ' ' : '\n');
p = p->next;
}
p = head2->next;
while (p)
{
printf("%d%c", p->date, p->next != NULL ? ' ' : '\n');
p = p->next;
}
}
lst *Combin_list(lst *head1, lst *head2)
{
lst *r, *r1, *r2;
r1 = head1->next;
r2 = head2->next;
r = head1;
while (r1 && r2)
{
if (r1->date < r2->date)
{
r->next = r1;
r = r1;
r1 = r1->next;
r->next = NULL;
}
else
{
r->next = r2;
r = r2;
r2 = r2->next;
r->next = NULL;
}
}
if (r1 == NULL)
r->next = r2;
if (r2 == NULL)
r->next = r1;
return head1;
}
int main()
{
lst *head;
int n;
cin >> n;
head = new lst;
Create_list1(head, n);
Show_list(head);
return 0;
}