Cân bằng dãy số
Đề bài
Mô tả
Cho một dãy số nguyên gồm phần tử. Dãy được gọi là đẹp nếu tồn tại một số nguyên sao cho mỗi giá trị xuất hiện trong dãy có số lần xuất hiện đúng bằng hoặc bằng .
Bạn được phép xoá bớt một số phần tử khỏi dãy (giữ nguyên thứ tự các phần tử còn lại). Hãy tìm số phần tử nhỏ nhất cần xoá để dãy còn lại trở thành dãy đẹp.
Dữ liệu vào
- Dòng đầu tiên chứa số nguyên — số bộ dữ liệu.
- Với mỗi bộ:
- Dòng đầu chứa số nguyên — độ dài dãy .
- Dòng thứ hai chứa số nguyên .
Dữ liệu ra
Với mỗi bộ dữ liệu, in ra một số nguyên — số phần tử ít nhất phải xoá để dãy trở thành dãy đẹp.
Ràng buộc
- Tổng trên tất cả các bộ dữ liệu không vượt quá .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 6 1 3 2 1 4 2 4 100 100 4 100 8 1 2 3 3 3 2 6 6 |
2 1 2 |
Bộ 1: xoá hai phần tử ở vị trí 2 và 5, còn lại — mỗi giá trị xuất hiện đúng 2 lần. Bộ 2: xoá phần tử , còn lại ba số . Bộ 3: xoá hai trong số ba số (hoặc tương đương), còn lại — mỗi giá trị xuất hiện đúng lần. |
| 1 1 1 |
0 | Dãy chỉ có một phần tử đã là dãy đẹp với . |
Bình luận