Я написал своё решение и из любопытства посмотрел на готовое решение. Они отличаются, но валидатор пропустил. Я попробовал разные кейсы прогнать и вроде всё ок. Возможно я не вижу чем моё решение хуже и когда оно неправильно работает
if (waitingEmployees.contains(name) && name != null) {
            if (!(alreadyGotSalaryEmployees.contains(name)) && name != null) {
                alreadyGotSalaryEmployees.add(name);
                waitingEmployees.set(waitingEmployees.indexOf(name), null);
            }