cs: add «2583. Kth Largest Sum in a Binary Tree»

URL:	https://leetcode.com/problems/kth-largest-sum-in-a-binary-tree/
Signed-off-by: Matej Focko <me@mfocko.xyz>
This commit is contained in:
Matej Focko 2024-10-22 22:22:44 +02:00
parent 916067a73a
commit 18e176c3e6
Signed by: mfocko
SSH key fingerprint: SHA256:icm0fIOSJUpy5+1x23sfr+hLtF9UhY8VpMC7H4WFJP8

View file

@ -0,0 +1,27 @@
public class Solution {
private void Sum(List<long> levels, TreeNode node, int level) {
if (node == null) {
return;
}
while (level >= levels.Count) {
levels.Add(0);
}
levels[level] += node.val;
Sum(levels, node.left, level + 1);
Sum(levels, node.right, level + 1);
}
public long KthLargestLevelSum(TreeNode root, int k) {
var levels = new List<long>();
Sum(levels, root, 0);
if (k > levels.Count) {
return -1;
}
levels.Sort();
return levels[levels.Count - k];
}
}