#include <stdio.h>
#include <stdlib.h>
typedef struct QNode
{
int data;
struct QNode* next;
}QNode;
void push(QNode* pQ, int x)
{
QNode* pR, * pS;
pR = pQ;
while (pR->next != NULL)
pR = pR->next;
pS = (QNode*)malloc(sizeof(QNode));
pS->next = NULL;
pS->data = x;
pR->next = pS;
}
void pop(QNode* pQ)
{
QNode* pR;
while (1)
{
pR = pQ->next;
if (pR == NULL)
return;
pQ->next = pR->next;
free(pR);
}
}
void disp(QNode* pQ)
{
if (pQ->next == NULL)
return;
QNode* pR;
pR = pQ->next;
while (pR != NULL)
{
printf("%d ", pR->data);
pR = pR->next;
}
printf("\n");
}
int main()
{
int n, i = 1, j = 0, x1 = 1;
QNode* pQ;
pQ = (QNode*)malloc(sizeof(QNode));
pQ->next = NULL;
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
int x = 1;
for (j = 0; j < i; j++)
{
if (j == 0)
push(pQ, x1);
else
{
x = x * (i - j) / j;
push(pQ, x);
}
}
disp(pQ);
pop(pQ);
}
return 0;
}