MakerHyeon

[백준] 13300번 방 배정 (python) 본문

Algorithm/backjoon

[백준] 13300번 방 배정 (python)

유쾌한고등어 2023. 4. 6. 17:41

https://www.acmicpc.net/problem/13300

 

13300번: 방 배정

표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 수학여행에 참가하는 학생 수를 나타내는 정수 N(1 ≤ N ≤ 1,000)과 한 방에 배정할 수 있는 최대 인원 수 K(1 < K ≤ 1,000)가 공백으로 분리되어

www.acmicpc.net

 

먼저 input을 받고, students 이중배열로 각 학년별 [여,남] 인원수를 받는다.

조건은 같은 학년,성별끼리 배정해야한다는 것이다.

따라서 각 배열 원소//k로 몫을 방개수에 더해주고,만약 나머지가있다면(2//3==2)방이 하나더 필요한 것이므로 +1을 해준다.복잡해보이지만 이중배열로 생각했을시 쉽게 풀리는 문제였음....;;


SOLUTION CODE

# PYTHON

import sys
input = sys.stdin.readline

N, K = map(int,input().split())
students = [[0,0] for _ in range(6)] # [여,남] * 6
res = 0

for _ in range(N):
    S, Y = map(int,input().split())
    students[Y-1][S]+=1

for grade in students:
    for num in grade:
        res+=num//K
        if num % K: # 만약 남은 인원이 있다면(나머지)
            res+=1 # 방이 하나더 필요
    
print(res)
Comments