1) Код ... как лучше? 2) Есть подозрение, что не оптимально для больших массивов данных. 3) Метод getNumberOfSuccessfulAttemptToSolveTask(int, Date, Date) должен возвращать количество успешных решений задачи с номером task за выбранный период. Нужны советы что еще попробовать: - Status.OK - снимал. в условии неоднозначно, поэтому попробовал - количества результатов от Event.SOLVE_TASK и Event.DONE_TASK складывал. - буду дописывать... P.S. задача - супер!