/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
List
<Integer
> l
= Arrays.
asList(1,
2,
3,
4,
5,
5,
6,
6,
7,
7,
7,
8,
3,
8,
8); final int N=3;
System.
out.
println(nSizeParts
(l,N
)); System.
out.
println(nTimeParts
(l,N
)); }
private static <T> List<List<T>> nSizeParts(List<T> objs, final int N) {
return new ArrayList<>(IntStream.range(0, objs.size()).boxed().collect(
Collectors.groupingBy(e->e/N,Collectors.mapping(e->objs.get(e), Collectors.toList())
)).values());
}
private static <T> List<List<T>> nTimeParts(List<T> objs, final int N) {
return new ArrayList<>(IntStream.range(0, objs.size()).boxed().collect(
Collectors.groupingBy(e->e%N,Collectors.mapping(e->objs.get(e), Collectors.toList())
)).values());
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CmltcG9ydCBqYXZhLnV0aWwuc3RyZWFtLkNvbGxlY3RvcnM7CmltcG9ydCBqYXZhLnV0aWwuc3RyZWFtLkludFN0cmVhbTsKCi8qIE5hbWUgb2YgdGhlIGNsYXNzIGhhcyB0byBiZSAiTWFpbiIgb25seSBpZiB0aGUgY2xhc3MgaXMgcHVibGljLiAqLwpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uIHsKCQlMaXN0PEludGVnZXI+IGwgPSBBcnJheXMuYXNMaXN0KDEsMiwzLDQsNSw1LDYsNiw3LDcsNyw4LDMsOCw4KTsKCQlmaW5hbCBpbnQgTj0zOwoJCVN5c3RlbS5vdXQucHJpbnRsbihuU2l6ZVBhcnRzKGwsTikpOwoJCVN5c3RlbS5vdXQucHJpbnRsbihuVGltZVBhcnRzKGwsTikpOwoJfQoJCXByaXZhdGUgc3RhdGljIDxUPiBMaXN0PExpc3Q8VD4+IG5TaXplUGFydHMoTGlzdDxUPiBvYmpzLCBmaW5hbCBpbnQgTikgewoJCXJldHVybiBuZXcgQXJyYXlMaXN0PD4oSW50U3RyZWFtLnJhbmdlKDAsIG9ianMuc2l6ZSgpKS5ib3hlZCgpLmNvbGxlY3QoCgkJCQlDb2xsZWN0b3JzLmdyb3VwaW5nQnkoZS0+ZS9OLENvbGxlY3RvcnMubWFwcGluZyhlLT5vYmpzLmdldChlKSwgQ29sbGVjdG9ycy50b0xpc3QoKSkKCQkJCQkJKSkudmFsdWVzKCkpOwoJfQoJCXByaXZhdGUgc3RhdGljIDxUPiBMaXN0PExpc3Q8VD4+IG5UaW1lUGFydHMoTGlzdDxUPiBvYmpzLCBmaW5hbCBpbnQgTikgewoJCXJldHVybiBuZXcgQXJyYXlMaXN0PD4oSW50U3RyZWFtLnJhbmdlKDAsIG9ianMuc2l6ZSgpKS5ib3hlZCgpLmNvbGxlY3QoCgkJCQlDb2xsZWN0b3JzLmdyb3VwaW5nQnkoZS0+ZSVOLENvbGxlY3RvcnMubWFwcGluZyhlLT5vYmpzLmdldChlKSwgQ29sbGVjdG9ycy50b0xpc3QoKSkKCQkJCQkJKSkudmFsdWVzKCkpOwoJfQp9
[[1, 2, 3], [4, 5, 5], [6, 6, 7], [7, 7, 8], [3, 8, 8]]
[[1, 4, 6, 7, 3], [2, 5, 6, 7, 8], [3, 5, 7, 8, 8]]