Guest
Новичок
|
Народ помогите решить задачу! плз! Меня не интересует код, я хочу знать идею решения - правильного! Большое спасибо! Жду условие задачи: По заданному двоичному дереву найдите способ распилить некоторые его ребра так, чтобы каждая из его частей имела не более k вершин, а общее количество частей не превышало (2*n/k). В первой строке n - количество вершин и k. Следующие n-1 строк описывают ребра дерева. Каждое описывается двумя номерами вершин: номером родителя и номером ребенка. Корень дерева 1. Вывести количество ребер, которые следует перепилить и эти ребра. Пример ввод: 5 2 1 2 1 5 5 3 5 4 Ввывод: 2 2 4
|