aboutsummaryrefslogtreecommitdiff
path: root/challenge-326/deadmarshal/java/Ch2.java
blob: 67ae25bcc0879d9f5d15939a2fcf10e9d8af64aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.IntStream;

public class Ch2 {
  public static void main(String[] args) {
    System.out.println(decompressed_list(new int[]{1, 3, 2, 4}));
    System.out.println(decompressed_list(new int[]{1, 1, 2, 2}));
    System.out.println(decompressed_list(new int[]{3, 1, 3, 2}));
  }

  private static List<Integer> decompressed_list(int[] arr) {
    return IntStream.range(0, arr.length / 2)
      .mapToObj(i -> Arrays.stream(new int[arr[2 * i]])
        .map(val -> arr[2 * i + 1])
        .boxed())
      .flatMap(s -> s)
      .collect(Collectors.toList());
  }
}