반응형
https://www.acmicpc.net/problem/13300
13300번: 방 배정
표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 수학여행에 참가하는 학생 수를 나타내는 정수 N(1 ≤ N ≤ 1,000)과 한 방에 배정할 수 있는 최대 인원 수 K(1 < K ≤ 1,000)가 공백으로 분리되어
www.acmicpc.net
풀이
무언가 요구하는 것이 많아보이지만 차근차근 읽으면 쉽게 풀 수 있는 문제이다.
문제에서 대놓고 table 구조를 보여주어 2차원 배열을 쓸 것을 쉽게 생각해낼 수 있다.
코드
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
int N, K, S, Y,cnt = 0;
vector<vector<int>> v(7, vector<int>(2,0)); // int arr[7][2] = {};
cin >> N >> K;
for (int i = 0; i < N; i++) {
cin >> S >> Y;
v[Y][S]++;
}
for (int i = 1; i <= 6; i++) {
for (int j = 0; j <= 1; j++) {
int students = v[i][j];
cnt += (students / K) + (students % K ? 1 : 0);
}
}
cout << cnt;
}
반응형