Time Needed to Inform All Employees

A company has n employees with a unique ID for each employee from 0 to n - 1. The head of the company is the one with headID.

Each employee has one direct manager given in the manager array where manager[i] is the direct manager of the i-th employee, and manager[headID] = -1. It is guaranteed that the subordination relationships have a tree structure.

The head of the company wants to inform all employees of an urgent piece of news. The head will inform their direct subordinates, and those employees will inform their subordinates, and so on until all employees know about the urgent news.

The i-th employee needs informTime[i] minutes to inform all of their direct subordinates. After informTime[i] minutes, all of that employee's direct subordinates can start spreading the news.

Return the number of minutes needed to inform all employees about the urgent news.

Example 1
Inputn = 1, headID = 0, manager = [-1], informTime = [0]
Output0
The head of the company is the only employee in the company.
Example 2
Inputn = 6, headID = 2, manager = [2,2,-1,2,2,2], informTime = [0,0,1,0,0,0]
Output1
The head of the company with id 2 is the direct manager of all employees and needs 1 minute to inform them all.

Constraints

  • 1 <= n <= 10^5
  • 0 <= headID < n
  • manager.length == n
  • 0 <= manager[i] < n
  • manager[headID] == -1
  • informTime.length == n
  • 0 <= informTime[i] <= 1000
  • informTime[i] == 0 if employee i has no subordinates.
  • It is guaranteed that all the employees can be informed.

Asked at 5 companies

</>

Your Solution

(Ctrl/Cmd + Enter)

Switching Language

Loading template...

Loading...

Sign in to save your progress

AI code evaluation

Get a correctness verdict, missed edge cases, and complexity analysis of your solution.

Sign in to evaluate