13300번: 방 배정
표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 수학여행에 참가하는 학생 수를 나타내는 정수 N(1 ≤ N ≤ 1,000)과 한 방에 배정할 수 있는 최대 인원 수 K(1 < K ≤ 1,000)가 공백으로 분리되어
www.acmicpc.net
2차원 배열에 성별( 0, 1 ), 학년( 1, 2, 3, 4, 5, 6 ) 을 인덱스로 주어서 풀이하였다.
import java.util.Scanner;
public class BJ방배정 {
static int N,K,cnt;
static int student [][];
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
cnt=0;//만들방의수 카운트
N =sc.nextInt();//학생수
K =sc.nextInt();//방배정최대인원
student = new int[2][7];//1~6학년까지 담을
for (int i = 0; i < N; i++) {
int S= sc.nextInt();//성별 인덱스 0:여자 1:남자
int Y = sc.nextInt();//배열인덱스 1~6이므로
student[S][Y]++;
}//담기 끝
for (int i = 0; i < 2; i++) {
for (int j = 1; j < 7; j++) {
//1,2 -> 1 3,4-> 2 올림해야함.
int s = student[i][j] ;
//0으로 나누어 떨어지지 않는다 -> 1 혹은 3
if(s%K != 0) cnt++;// 방 하나 추가
cnt += s / K; //나누어 떨어진다면 몫을 추가.
}
}
System.out.println(cnt); //최종 카운트 출력
}
}
'Problem Solving > BOJ' 카테고리의 다른 글
백준- 16506 CPU (0) | 2021.03.07 |
---|---|
백준- 8911 거북이 (0) | 2021.03.07 |
백준 - 10163 색종이 (0) | 2021.02.22 |
백준- 2606번 바이러스 (0) | 2021.02.21 |
백준 -1931 회의실 배정 (0) | 2021.02.21 |
댓글