int pathSum(TreeNode* root) {
if (root == NULL) return 0;
if (root->left != NULL && root->right ==NULL)
return pathSum(root->left) + root->val;
if (root->left == NULL && root->right != NULL)
return pathSum(root->right) + root->val;
return min(pathSum(root->left),pathSum(root->right)) + root->val;
}