#include using namespace std; using ll = long long; int main () { int N, M; ll T; cin >> N >> M >> T; std::vector A(N, 0); for (int i = 0; i < M; i ++) { int a; cin >> a; A[--a] ++; } ll ok = M, ng = 0; while (abs(ok - ng) > 1) { ll mu = (ok + ng) / 2; ll x = 0, y = 0; for (auto& a : A) { if (a > mu) { x += (a - mu); } else { y += (mu - a) / T; } } if (x <= y) { ok = mu; } else { ng = mu; } } cout << ok << endl; }