Хыиуду » 09 янв 2014, 11:18
Будем считать уровнем сотрудника количество стоящих над ним начальников. Уровень босса - 0, уровень его непосредственных подчиненных - 1, уровень подчиненных этих подчиненных - 2, и т.д.
По условиям задачи весь первый уровень отбрасывается сразу (босс же не может не пойти на свою вечеринку сам), а дальше для всех сотрудников 2 уровня надо вычислить два суммарных ранга: ранг самого сотрудника и суммарный ранг каждого его подподчиненного (4 уровня), либо суммарный ранг каждого из его подчиненных (3 уровень). При этом суммарный ранг человека, не имеющего подчиненных, равен его собственному рангу.
Правда, что делать с ограничением по N - непонятно. Возможно, после отбора нужных людей отсортировать их по убыванию ранга и взять первые N человек, но тут уже не могу гарантировать оптимальность.
Будем считать уровнем сотрудника количество стоящих над ним начальников. Уровень босса - 0, уровень его непосредственных подчиненных - 1, уровень подчиненных этих подчиненных - 2, и т.д.
По условиям задачи весь первый уровень отбрасывается сразу (босс же не может не пойти на свою вечеринку сам), а дальше для всех сотрудников 2 уровня надо вычислить два суммарных ранга: ранг самого сотрудника и суммарный ранг каждого его подподчиненного (4 уровня), либо суммарный ранг каждого из его подчиненных (3 уровень). При этом суммарный ранг человека, не имеющего подчиненных, равен его собственному рангу.
Правда, что делать с ограничением по N - непонятно. Возможно, после отбора нужных людей отсортировать их по убыванию ранга и взять первые N человек, но тут уже не могу гарантировать оптимальность.