Suppose I have a tree $T=(V,E,w)$ with vertex weights $w(v)\ge 0$ for all $v\in V$. I want to partition this tree into $k+1$ trees by cutting $k$ edges such that the deviation from the mean of the sum of vertex weights in each partition is minimized.
Is there an algorithm to get a good approximation in polynomial time?
Literature research has yielded this method finding a partitioning with bounded partition size, but it doesn't seem to adapt readily to the desired fixed number of cuts. Likewise, there is a lot of research on tree partitionings where multiple subtrees can be placed into one partition, an NP-hard problem. This doesn't seem relevant either as each partition must be a single subtree in my case, significantly changing the problem. This question seems to ask the same question I ask but doesn't specify what kind of partitioning is optimal. The dynamic program given in this answer would work for the unweighted case, but my graph is weighted, so it doesn't apply.