//土尔逊Torson 编写于2023/06/10
#define _CRT_SECURE_NO_WARNINGS
#include <cstdio>
#include <string>
using namespace std;
struct TreeNode {
int data;
TreeNode * leftChild;
TreeNode * rightChild;
};
void insertBST(TreeNode * &root, int data) {
TreeNode *pNewNode = new TreeNode;
pNewNode->data = data;
pNewNode->leftChild = NULL;
pNewNode->rightChild = NULL;
if (root == NULL) {
root = pNewNode;
printf("-1\n");
}
else {
TreeNode *pPre = root;
TreeNode *pCur;
while (true) {
if (data < pPre->data) {
pCur = pPre->leftChild;
if (pCur == NULL) {
pPre->leftChild = pNewNode;
printf("%d\n", pPre->data);
break;
}
else {
pPre = pCur;
}
}
else {
pCur = pPre->rightChild;
if (pCur == NULL) {
pPre->rightChild = pNewNode;
printf("%d\n", pPre->data);
break;
}
else {
pPre = pCur;
}
}
}
}
}
int main() {
int n;
scanf("%d", &n);
TreeNode * root = NULL;
for (int i = 0; i < n; ++i) {
int num;
scanf("%d", &num);
insertBST(root, num);
}
system("pause");
return EXIT_SUCCESS;
}
// 64 位输出请用 printf("%lld")