방 배정

학생을 학년과 성별로 분류한 뒤 1, 2학년은 한 묶음으로, 3~6학년은 성별로 나눠 각 묶음에 필요한 방 수를 ceil(인원/K)로 계산한다.

쉬움3수학구현면접 대비아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

정보 초등학교가 2박 3일 일정으로 수학여행을 떠난다. 1학년부터 6학년까지 학생이 묵을 방을 모두 배정해야 하며, 규칙은 다음과 같다.

  • 1학년과 2학년은 성별과 학년을 구분하지 않고 같은 방에 배정할 수 있다.
  • 3학년과 4학년은 학년을 구분하지 않지만, 남학생은 남학생끼리, 여학생은 여학생끼리 배정해야 한다.
  • 5학년과 6학년도 3학년, 4학년과 같은 규칙을 따른다.
  • 한 방에 한 명만 배정해도 된다.

한 방에 배정할 수 있는 최대 인원 KK가 주어질 때, 모든 학생을 규칙에 맞게 배정하는 데 필요한 방의 최소 개수를 구하는 프로그램을 작성하시오.

예를 들어 수학여행에 가는 학생 수가 아래와 같고 K=2K = 2이면 방 9개가 필요하다.

학년여학생남학생
1학년12
2학년21
3학년13
4학년01
5학년12
6학년11

입력

첫째 줄에 수학여행에 참가하는 학생 수 NN(1N1,0001 \le N \le 1{,}000)과 한 방에 배정할 수 있는 최대 인원 KK(1K1,0001 \le K \le 1{,}000)가 공백으로 구분되어 주어진다.

이어지는 NN개 줄에는 학생 한 명의 성별 SS와 학년 YY(1Y61 \le Y \le 6)가 공백으로 구분되어 주어진다. SS는 여학생이면 0, 남학생이면 1이다.

출력

모든 학생을 배정하는 데 필요한 방의 최소 개수를 한 줄에 출력한다.