1
2
3
4
5
6
7
8
9
10
11
| import java.util.Arrays;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import java.util.List;
class Solution {
public int solution(int[][] lines) {
return lines[0][1] == lines[1][0] && lines[1][1] == lines[2][0] || lines[0][1] == lines[1][0] && lines[2][1] == lines[0][0] || lines[0][1] == lines[2][0] && lines[2][1] == lines[1][0] || lines[0][1] == lines[2][0] && lines[1][1] == lines[0][0] || lines[1][1] == lines[0][0] && lines[2][1] == lines[1][0] ? 0 : Arrays.stream(lines).flatMap(arr -> IntStream.rangeClosed(arr[0], arr[1]).boxed()).collect(Collectors.groupingBy(n -> n)).values().stream().map(List::size).noneMatch(n -> n > 1) ? 0 : (int) (Arrays.stream(lines).flatMap(arr -> IntStream.rangeClosed(arr[0], arr[1]).boxed()).collect(Collectors.groupingBy(n -> n)).values().stream().map(List::size).filter(n -> n > 1).count() - 1);
}
}
|