class Solution {
public int help(List<Employee> employees,Employee e) {
int count = 0;
if(e.subordinates.isEmpty()) {
return e.importance;
} else {
for(int i=0;i<e.subordinates.size();i++) {
int id = e.subordinates.get(i);
count += help(employees,getEmployee(employees,id));
}
return e.importance + count;
}
}
public Employee getEmployee(List<Employee> employees, int id) {
if(employees.isEmpty()) {
return null;
}
for (int i = 0; i < employees.size(); i++) {
Employee employee = employees.get(i);
if(employee.id==id) {
return employee;
}
}
return null;
}
public int getImportance(List<Employee> employees, int id) {
if(employees.isEmpty()) {
return -1;
}
Employee employee = getEmployee(employees,id);
if(employee==null) {
return -1;
}
int count = help(employees,employee);
return count;
}
}
