We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent d584ca9 commit 7ca48fcCopy full SHA for 7ca48fc
Programmers/Level3/SB_67258.java
@@ -0,0 +1,29 @@
1
+import java.util.*;
2
+
3
+class SB_67258 {
4
+ public int[] solution(String[] gems) {
5
+ Set<String> set = new HashSet<>(Arrays.asList(gems));
6
+ HashMap<String, Integer> map = new HashMap<>();
7
+ int N = set.size();
8
+ int mn = Integer.MAX_VALUE;
9
+ int[] ans = new int[2];
10
11
+ int start = 0;
12
+ for (int end = 0; end < gems.length; end++) {
13
+ map.put(gems[end], map.getOrDefault(gems[end], 0) + 1); // 하나씩 보석 먹어나가기
14
+ while (map.size()==N) { // 먹은 보석의 개수가 전체 보석일때 동안
15
+ if (end-start < mn) { // 현재 길이가 짧다면 답 업데이트
16
+ mn = end-start;
17
+ ans[0] = start;
18
+ ans[1] = end;
19
+ }
20
+ map.put(gems[start], map.getOrDefault(gems[start], 0) - 1);
21
+ if (map.get(gems[start])==0) map.remove(gems[start]); // 보석뺐을때 0 되면 그 보석 못먹은거니까 빼기
22
+ start++;
23
24
25
+ ans[0]++;
26
+ ans[1]++;
27
+ return ans;
28
29
+}
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
0 commit comments