2
public int[] minDifference(int[] nums, int[][] queries) {4
int[][] count = new int[n + 1][100];5
int q = queries.length;6
int ans[] = new int[q];8
for (int i = 0; i < n; ++i) {9
for (int j = 0; j < 100; ++j) count[i + 1][j] = count[i][j];11
++count[i + 1][nums[i] - 1];14
for (int i = 0; i < q; ++i) {15
int low = queries[i][0];16
int high = queries[i][1] + 1;17
List<Integer> present = new ArrayList<>();20
for (int j = 0; j < 100; ++j) if (count[high][j] - count[low][j] != 0) present.add(j);22
for (int j = 1; j < present.size(); ++j)23
min = Math.min(min, present.get(j) - present.get(j - 1));25
if (present.size() == 1) min = -1;