forked from fishercoder1534/Leetcode
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path_2260.java
33 lines (31 loc) · 1.01 KB
/
_2260.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package com.fishercoder.solutions;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class _2260 {
public static class Solution1 {
public int minimumCardPickup(int[] cards) {
int min = cards.length;
Map<Integer, List<Integer>> map = new HashMap<>();
for (int i = 0; i < cards.length; i++) {
List<Integer> list = map.getOrDefault(cards[i], new ArrayList<>());
list.add(i);
map.put(cards[i], list);
}
boolean found = false;
for (int key : map.keySet()) {
List<Integer> list = map.get(key);
for (int i = 0; i < list.size() - 1; i++) {
found = true;
min = Math.min(min, list.get(i + 1) - list.get(i) + 1);
}
}
if (!found) {
return -1;
} else {
return min;
}
}
}
}