Вы меня немного запутали, и я подумал, что вы, возможно, неправильно поняли проблему.Задача "k-MST" состоит в том, чтобы найти k ребер, которые образуют поддерево так, что сумма его ребер меньше или равна всем другим суммам, которые вы можете получить из поддеревьев k ребер.Но потом я увидел множественное число s.
Итак, для вашей проблемы я лично попытался бы найти DP-алгоритм для нахождения MST, который сочетается со способом генерации «следующих» MST.Так как это динамическое программирование, я бы посмотрел на многократную оптимизацию чего-либо (в данном случае де-оптимизацию для каждого шага) или на различные способы разделения ребер на подмножества, которые имеют смысл в настройке MST.Там может быть несколько способов.
Тем не менее, при поиске разделов и минимальных остовных деревьев я нашел это, что может помочь, если вы просто хотите получить ответ: http://www.scielo.br/scielo.php?script=sci_arttext&pid=S0101-74382005000200004