풀이)
책을 넣을 최소한의 박스 개수를 구하여라.
입력받은 책의 무게들을 배열에 넣고, int sum을 통해 책의 무게의 합을 계산하여 박스가 견디는 무게 중량을 초과하는지를 따져 계산하면 된다.
내 코드)
import java.io.*;
import java.util.StringTokenizer;
public class Backjoon1996 {
public static void main(String[]args) throws IOException{
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(bf.readLine());
int N = Integer.parseInt(st.nextToken()); //책 개수
int M = Integer.parseInt(st.nextToken()); //박스 중량
if(N==0) {
System.out.println(0);
return;
}
int input[] = new int[N];
st = new StringTokenizer(bf.readLine());
for(int i=0;i<N;i++) {
input[i] = Integer.parseInt(st.nextToken());
}
int count = 0; //박스 개수
int sum = 0;
int i;
for(i=0;i<N;i++) {
sum += input[i];
if(sum>M) {
i--;
count++;
sum = 0;
}
}
System.out.println(count+1);
}
}