* Definition for a binary tree node.
* TreeNode(int x) : val(x), left(NULL), right(NULL) {}
TreeNode* bstFromPreorder(vector<int>& preorder) {
TreeNode* root = new TreeNode(preorder[0]);
for(int i=1;i<preorder.size();i++)
if(preorder[i] <cur->val )
cur->left = new TreeNode(preorder[i]);
while( s.size()>1 && cur->val < preorder[i])
if( cur->val < preorder[i]){
cur->right = new TreeNode(preorder[i]);
cur->right = new TreeNode(preorder[i]);