* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
class Solution {
private:
int res = 0;
int cur_res = 0;
public:
/**
*
* @param root TreeNode类
* @return int整型
*/
int sumNumbers(TreeNode* root) {
// write code here
dfs(root);
return res;
}
void dfs(TreeNode* root){
if(root == nullptr){
return;
}
cur_res = cur_res*10 + root->val;
if(root->left == nullptr && root->right == nullptr){
res += cur_res;
}
dfs(root->left);
dfs(root->right);
cur_res = cur_res/10;
}
};