Những buổi tiệc

Xem PDF

Nộp bài


Điểm: 15 (thành phần)
Thời gian: 1.0s
Bộ nhớ: 256M

Tác giả:
Dạng bài

Vì số lượng sinh viên tăng đáng kể trong những năm vừa qua, Đại học Quốc gia vừa mở thêm một làng đại học gồm \(M\) tòa nhà, được đánh số từ \(1\) đến \(M\). Trong \(N\) ngày sau khi làng đại học mở cửa đón sinh viên, mỗi ngày sẽ có thêm đúng một sinh viên chuyển đến ở một tòa nhà bất kỳ trong đó.

Mỗi khi tòa nhà nào đó có sinh viên mới tới, cả tòa sẽ tổ chức buổi tiệc linh đình. Độ ồn ào của buổi tiệc được tính bằng tổng số sinh viên đang ở trong tòa nhà đó (tính cả sinh viên mới chuyển vào). Ban quản lý làng đại học không thích tiếng ồn, chính vì vậy họ muốn giảm mức độ ồn ào xuống mức thấp nhất có thể. Để thực hiện điều đó, ban quản lý quyết định sẽ chuyển toàn bộ sinh viên của một tòa nhà bất kỳ sang làng đại học khác (nghĩa là không liên quan đến làng đại học này nữa). Cứ sau một số ngày, ban quản lý sẽ thực hiện việc chuyển đó, nhưng họ nhận thấy không được làm việc này quá \(K\) lần vì sẽ ảnh hưởng lớn đến đời sống của sinh viên.

Hãy giúp ban quản lý làng đại học xác định cách chuyển (không quá \(K\) lần) sao cho tổng độ ồn ào của \(N\) buổi tiệc là nhỏ nhất.

Input

  • Dòng đầu tiên chứa \(3\) số nguyên dương \(N\ (1\leq N\leq10^6)\), \(M\ (1\leq M\leq100)\), và \(K\ (1\leq K\leq500)\) - lần lượt là số ngày có học sinh chuyển tới, số tòa nhà trong làng đại học và số lần tối đa ban quản lý có thể chuyển dời toàn bộ sinh viên của một tòa sang tòa khác;
  • Tiếp theo là \(N\) dòng, dòng thứ \(i\)_th trong đó chứa một số nguyên dương trong đoạn \([1..M]\): chỉ số của tòa nhà mà sinh viên chuyển vào ngày thứ \(i\)_th sẽ đến ở.

Output

  • In ra một số nguyên dương duy nhất là tổng độ ồn nhỏ nhất có thể.

Ví dụ

Sample input 1
5 1 2
1
1
1
1
1
Sample output 1
7
Note

Có nhiều cách để đạt được tổng độ ồn nhỏ nhất \(7\). Chẳng hạn cứ sau hai ngày thì sẽ thực hiện việc chuyển đi toàn bộ sinh viên của tòa thứ nhất. Nghĩa là việc này sẽ được thực hiện đúng \(2\) lần, lần đầu sau ngày thứ \(2\) và lần hai sau ngày thứ \(4\). Khi đó độ ồn của mỗi ngày lần lượt là 1 2 1 2 1.


Sample input 2
11 2 3
1
2
1
2
1
2
1
2
1
2
1
Sample output 2
18
Note

Một cách để đạt được độ ồn tối thiểu \(18\) là: sau ngày thứ \(4\) và thứ \(8\) thì chuyển đi toàn bộ sinh viên tòa thứ nhất; và sau ngày \(6\) thì chuyển đi toàn bộ sinh viên tòa thứ hai. Khi đó độ ồn của các ngày lần lượt là: 1 1 2 2 1 3 2 1 1 2 2.

Ràng buộc

Trong tổng số \(7\) tests của bài có:

  • \(2\) tests có \(M=1\);
  • \(3\) tests có \(N\leq1000\);
  • \(4\) tests có \(N\leq50000\).

Chúc bạn rùa được nhiều tests nhất có thể <(")