Notice
Recent Posts
Recent Comments
Link
Dev.baelanche
[백준 6236] 용돈 관리 본문
반응형
문제 설명이 장황하지만 기타 레슨과 완전히 똑같은 문제이다.
입력값의 범위와 출력 패턴도 똑같아서 Ctrl + C, Ctrl + V 를 해도 된다;;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
int a[] = new int[n];
int left = 0;
int right = 0;
for(int i=0; i<n; i++) {
a[i] = sc.nextInt();
left = a[i] > left ? a[i] : left;
right += a[i];
}
while(left <= right) {
int mid = (left + right)/2;
int sum = 0;
int cnt = 0;
for(int i=0; i<n; i++) {
if(sum + a[i] > mid) {
sum = 0;
cnt++;
}
sum += a[i];
}
if(sum != 0) cnt++;
if(cnt <= m) right = mid - 1;
else left = mid + 1;
}
System.out.println(left);
}
}
반응형
'Data Structure & Algorithm > PS - JAVA' 카테고리의 다른 글
[백준 16434] 드래곤 앤 던전 (0) | 2019.05.15 |
---|---|
[백준 2110] 공유기 설치 (0) | 2019.05.15 |
[백준 2343] 기타 레슨 (0) | 2019.05.13 |
[백준 13015] 별 찍기 - 23 (0) | 2019.05.13 |
[백준 10994] 별 찍기 - 19 (0) | 2019.05.13 |
Comments