如何从逻辑上解决这个问题

时间:2020-06-12 07:10:12

标签: java

我为每个ID设置了一个子集。我需要累计总数

ex:employeeIdSet是具有所有employeeId的外部集合

现在每位员工-可以合并也可以不合并,他们将被添加学分

empa - credit 10
empb linked with empc, empd - credit would be 15,  overall for the 3 employees.

类似地 与empz关联的empe,emps-3名员工的总信用为7,与empq关联的信用为9 类似地 empr与empo相关联-2名员工的信用总计为6

现在我想列出一个带有相应信用的员工ID列表

例如:

empa-10
emp-15,
empc-15,
empd-15,
empe - 7+9,
empz - 7+9,
emps- 7+9,
empr - 6,
empo - 6

我们在外部循环中获得员工ID的问题,而在内部循环中我们可以获取后续员工。但是所有添加都会导致问题

code 
 final Set<Long> combinedEmployeeIdSet = new HashSet<>();
 final Set<CombinedEmployee> combinedEmployees = employee.getCombinedEmployees();
        for(final CombinedEmployee combinedEmployee: combinedEmployees) {
            combinedEmployeeIdSet.add(combinedEmployee.getId());
        }
  for(final OtherEmployee otherEmployee: otherEmployees) {
            if(!combinedEmployeeIdSet.contains(otherEmployee.getId())) {
     employeeCredit += otherEmployee.getCredit();
   }
        }

expectation is get the total credits of the given employeeId where when there under same group, it should be added as one single unit, else the credit should be added
  empe - 7+9, displays 15 
  empz - 7+9, displays 15
  emps- 7+9,  displays 15

谢谢

1 个答案:

答案 0 :(得分:1)

您的描述非常令人困惑。

您的意思是说您有一些“ emp”,例如:emp-a,emp-b ... emp-x,每个emp都有一个信用,例如:emp-a:10,emp-b:5 ,emp-c:7 ... emp-x:6。一些emp与其他emp有联系,例如:emp-a(emp-b,empc)。现在,您想获得每个emp的信用,如果emp有链接,则其信用应该是其自身及其所有链接的总结。

所以你可能会得到

git commit