Мне нужно заполнить Список итераций (заданий) согласно рисунку.
Для выполнения задания, от hi
до lo
, разность генерирует операции факториального порядка n!
.
Теперь я делю задачу как картинку.И очень важна оптимизация.
Например: (80-43) = 37 -> 37! set of complex operations with lists of polynomials and mathematical transformations.
int hi = 80;
int lo = 43;
int expanse = 12;
int overlap = 8;
int remmant = expanse - overlap;
int iterations = (int) Math.ceil((hi - lo - expanse) / (double) remmant) + 1;
List<List<Integer>> listFinishedTask = new ArrayList<>();
for (int i = 0; i < iterations; i++) {
List<Integer> listIterations = new ArrayList<>();
for (int j = (hi - i * (remmant)); j > Math.max(hi - i * (remmant) - expanse, lo - 1); j--) {
listIterations.add(new Integer(j));
}
listFinishedTask.add(listIterations);
}
listFinishedTask.forEach(listIterations -> {
System.out.println(Arrays.toString(listIterations.toArray()));
});
Вывод:
[80, 79, 78, 77, 76, 75, 74, 73, 72, 71, 70, 69]
[76, 75, 74, 73, 72, 71, 70, 69, 68, 67, 66, 65]
[72, 71, 70, 69, 68, 67, 66, 65, 64, 63, 62, 61]
[68, 67, 66, 65, 64, 63, 62, 61, 60, 59, 58, 57]
[64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53]
[60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49]
[56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45]
[52, 51, 50, 49, 48, 47, 46, 45, 44, 43]
Теперь, есть ли другой алгоритм для создания списка, похожего на картинку?