diff --git "a/suyeun84/202508/27 PGM LV2 \354\227\260\354\206\215\353\220\234 \353\266\200\353\266\204 \354\210\230\354\227\264\354\235\230 \355\225\251.md" "b/suyeun84/202508/27 PGM LV2 \354\227\260\354\206\215\353\220\234 \353\266\200\353\266\204 \354\210\230\354\227\264\354\235\230 \355\225\251.md" new file mode 100644 index 00000000..035a31b3 --- /dev/null +++ "b/suyeun84/202508/27 PGM LV2 \354\227\260\354\206\215\353\220\234 \353\266\200\353\266\204 \354\210\230\354\227\264\354\235\230 \355\225\251.md" @@ -0,0 +1,33 @@ +```java +import java.util.*; +class Solution { + public int[] solution(int[] sequence, int k) { + List list = new ArrayList<>(); + int start = 0, end = 0, sum = sequence[0]; + while (start < sequence.length && end < sequence.length) { + if (sum == k) { + list.add(new int[] {start, end}); + } + if (sum <= k) { + end++; + if (end < sequence.length) + sum += sequence[end]; + } else { + if (start < sequence.length) + sum -= sequence[start]; + start++; + } + } + Collections.sort(list, new Comparator() { + @Override + public int compare(int[] o1, int[] o2) { + int len1 = o1[1] - o1[0]; + int len2 = o2[1] - o2[0]; + return len1 - len2; + } + }); + int[] answer = {list.get(0)[0], list.get(0)[1]}; + return answer; + } +} +```