garanphomai
Member
Java:
class Solution {
List<Integer> list = new ArrayList<>();
public TreeNode replaceValueInTree(TreeNode root) {
travelSum(root, 0);
travel(root, 0, list.get(0));
return root;
}
void travel(TreeNode node, int level, int sub) {
if (node == null)
return;
node.val = list.get(level) - sub;
sub = 0;
if (node.left != null)
sub += node.left.val;
if (node.right != null)
sub += node.right.val;
travel(node.left, level + 1, sub);
travel(node.right, level + 1, sub);
}
void travelSum(TreeNode node, int level) {
if (node == null)
return;
if (level == list.size())
list.add(0);
list.set(level, list.get(level) + node.val);
travelSum(node.left, level + 1);
travelSum(node.right, level + 1);
}
}


e còn ko biết xài chatgpt để làm contest, bữa có thử nhưng mà ko giải dc

