* Definition for a binary tree node.
* TreeNode(int x) : val(x), left(NULL), right(NULL) {}
TreeNode* getMaxInd(int start, int end)
if(start == end) return new TreeNode(num[start]);
for(int i=start;i<=end;i++)
TreeNode* root= new TreeNode(num[res]);
if(res-start>0) root->left = getMaxInd(start, res-1);
if(end - res>0) root->right = getMaxInd(res+1,end);
TreeNode* constructMaximumBinaryTree(vector<int>& nums) {
return getMaxInd(0,num.size()-1);