Untitled
unknown
plain_text
2 years ago
665 B
8
Indexable
class Solution
{
public:
void drive(Node* root, int len,int &maxlen,int sum,int &maxsum){
if(root==NULL){
if(len>maxlen){
maxlen=len;
maxsum=sum;
}else if(len==maxlen){
maxsum=max(sum,maxsum);
}
return;
}
sum+=root->data;
drive(root->left,len+1,maxlen,sum,maxsum);
drive(root->right,len+1,maxlen,sum,maxsum);
}
int sumOfLongRootToLeafPath(Node *root)
{
int len=0,maxlen=0,sum=0,maxsum=0;
drive(root,len,maxlen,sum,maxsum);
return maxsum;
}
};Editor is loading...