@@ -0,0 +1,779 @@
+%0A# Definition for a  binary tree node%0A# class TreeNode:%0A#     def __init__(self, x):%0A#         self.val = x%0A#         self.left = None%0A#         self.right = None%0A%0A%0Aclass Solution:%0A    # @param root, a tree node%0A    # @param sum, an integer%0A    # @return a list of lists of integers%0A%0A    def pathSum(self, root, sum):%0A        self.res = %5B%5D%0A        self.num = %5B%5D%0A        self.dfs(root, sum)%0A        return self.res%0A%0A    def dfs(self, root, sum):%0A        if root is None:%0A            return%0A        self.num.append(root.val)%0A        if root.val == sum and root.left is None and root.right is None:%0A            self.res.append(copy.deepcopy(self.num))%0A        else:%0A            self.dfs(root.left, sum-root.val)%0A            self.dfs(root.right, sum-root.val)%0A        self.num.pop()%0A

add solution for Path Sum II