아이콘 정리하기
시간 제한5초메모리 제한512 MB
화면 크기 s를 정한 뒤 각 카테고리의 아이콘을 s개 또는 s-1개씩 담아, 전체 화면 수의 최솟값을 구한다.
문제
BerPhone X는 개의 애플리케이션이 미리 설치된 채로 출시를 앞두고 있다. 애플리케이션의 카테고리는 이 애플리케이션의 장르나 주제를 나타낸다(예: "게임", "비즈니스", "교육"). 카테고리는 이상 이하의 정수로 주어지며, 번째 애플리케이션의 카테고리는 이다.
화면의 개수 과 각 화면의 크기 를 정할 수 있다. 다음 조건을 만족하도록 개 애플리케이션의 아이콘(애플리케이션 하나당 아이콘 하나)을 모두 배치해야 한다.
- 각 화면에서 모든 아이콘은 같은 카테고리의 애플리케이션에 속해야 한다(서로 다른 화면이 같은 카테고리 애플리케이션의 아이콘을 담아도 된다).
- 각 화면은 아이콘으로 완전히 채워지거나(화면에 있는 아이콘의 수가 와 같다), 거의 채워져야 한다(아이콘의 수가 과 같다).
가능한 화면 개수 의 최솟값을 구하라.
입력
첫째 줄에 정수 ()가 주어진다. 이는 입력에 있는 테스트 케이스의 수이다. 그다음 개의 테스트 케이스가 이어진다.
각 테스트 케이스의 첫째 줄에 정수 ()이 주어진다. 이는 아이콘의 수이다. 둘째 줄에 개의 정수 ()이 주어지며, 는 번째 애플리케이션의 카테고리이다.
입력에 있는 모든 테스트 케이스의 값의 합은 을 넘지 않는다.
출력
개의 정수를 출력한다. 이는 입력에 나온 순서대로 각 테스트 케이스의 답이다. 테스트 케이스의 답은 주어진 조건을 만족하도록 개의 아이콘을 모두 배치할 수 있는 최소 화면 개수 이다.
힌트
예제의 첫 번째 테스트 케이스에서는 모든 아이콘을 크기 인 세 화면에 배치할 수 있다. 카테고리 의 아이콘 개가 있는 화면, 카테고리 의 아이콘 개가 있는 화면, 카테고리 의 아이콘 개가 있는 화면이다.