diff --git "a/LiiNi-coder/202509/18 BOJ \355\235\251\353\202\240\353\246\254\353\212\224 \354\213\234\355\227\230\354\247\200 \354\206\215\354\227\220\354\204\234 \353\202\264 \355\217\211\354\240\220\354\235\264 \353\212\220\352\273\264\354\247\204\352\261\260\354\225\274.md" "b/LiiNi-coder/202509/18 BOJ \355\235\251\353\202\240\353\246\254\353\212\224 \354\213\234\355\227\230\354\247\200 \354\206\215\354\227\220\354\204\234 \353\202\264 \355\217\211\354\240\220\354\235\264 \353\212\220\352\273\264\354\247\204\352\261\260\354\225\274.md" new file mode 100644 index 00000000..9befdc07 --- /dev/null +++ "b/LiiNi-coder/202509/18 BOJ \355\235\251\353\202\240\353\246\254\353\212\224 \354\213\234\355\227\230\354\247\200 \354\206\215\354\227\220\354\204\234 \353\202\264 \355\217\211\354\240\220\354\235\264 \353\212\220\352\273\264\354\247\204\352\261\260\354\225\274.md" @@ -0,0 +1,50 @@ +```java +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.util.Arrays; +import java.util.StringTokenizer; + +public class Main { + public static void main(String[] args) throws IOException { + var br = new BufferedReader(new InputStreamReader(System.in)); + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int K = Integer.parseInt(st.nextToken()); + int[] arr = new int[N]; + + st = new StringTokenizer(br.readLine()); + for (int i = 0; i < N; i++) { + arr[i] = Integer.parseInt(st.nextToken()); + } + long left = Arrays.stream(arr).min().getAsInt(); + long right = 0; + for (int x : arr) + right += x; + + long answer = 0; + while(left <= right) { + long mid = (left + right) / 2; + int groupCount = 0; + long sum = 0; + + for (int i = 0; i < N; i++) { + sum += arr[i]; + if (sum >= mid) { + groupCount++; + sum = 0; + } + } + + if (groupCount >= K) { + answer = mid; + left = mid + 1; + } else { + right = mid - 1; + } + } + System.out.println(answer); + } +} + +```