What's the differences between the next three codes. 

1:

```
struct node
{
    int data;
}tree[100050];
/*
some codes
*/
int main()
{
    int tot;
    scanf("%d",&tot);
    int tmp;
    for(int i=0;i<=tot;++i){
        scanf("%d",&tmp);
        tree[i].data=tmp;
        insert(i,1);
    }
}

```

Wrong Answer

2:

```
struct node
{
    int data;
}tree[100050];
/*
some codes
*/
int main(){
    int n;
    scanf("%d",&n);
    int tmp;
    for(int i=0;i<=n;++i){
        scanf("%d",&tree[i].data);
        insert(i,1);
    }
}

```

Accepted

3:

```
struct node
{
    int data;
}tree[100050];
/*
some codes
*/
int main()
{
    int tot;
    scanf("%d",&tot);
    int tmp;
    for(int i=0;i<=tot;++i){
        scanf("%d",&tmp);
        tree[i].data=tmp;
        insert(i,1);
        tmp=0;
    }
}

```

Accepted

The first codes can not pass all tests, but next two codes can pass all tests.

The problem is here [POJS024](http://hzoi.openjudge.cn/shu/S024)。It is written in Chinese.
Input is a list of number which builds a Binary Sort Tree，the first number is the root.
Output the In-Order Traversal and the Post-Order Traversal。