# 路径总和 II

给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。

叶子节点 是指没有子节点的节点。

 

示例 1:

输入:root = [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSum = 22
输出:[[5,4,11,2],[5,8,4,5]]

示例 2:

输入:root = [1,2,3], targetSum = 5
输出:[]

示例 3:

输入:root = [1,2], targetSum = 0
输出:[]

 

提示:

## template ```cpp #include using namespace std; struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) {} }; class Solution { public: vector> pathSum(TreeNode *root, int sum) { vector> res; vector track; backTrack(root, res, track, sum); return res; } void backTrack(TreeNode *root, vector> &res, vector track, int sum) { if (!root) { return; } if (!root->left && !root->right) { sum -= root->val; track.push_back(root->val); if (sum == 0) { res.push_back(track); } track.pop_back(); sum += root->val; return; } sum -= root->val; track.push_back(root->val); backTrack(root->left, res, track, sum); backTrack(root->right, res, track, sum); track.pop_back(); sum += root->val; } }; ``` ## 答案 ```cpp ``` ## 选项 ### A ```cpp ``` ### B ```cpp ``` ### C ```cpp ```